| Package | flash.filters |
| Classe | public final class DisplacementMapFilter |
| Héritage | DisplacementMapFilter BitmapFilter Object |
| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
L'utilisation de filtres dépend de l'objet auquel vous appliquez le filtre.
filters de cet objet. Lorsque vous définissez la propriété filters d'un objet, celui-ci n'est pas modifié. En outre, vous pouvez supprimer la propriété filters pour enlever le filtre.
BitmapData.applyFilter(). L'appel de applyFilter() pour un objet BitmapData génère une image filtrée à partir de l'objet BitmapData source et de l'objet filtre.
Si vous appliquez un filtre à un objet d'affichage, la valeur de la propriété cacheAsBitmap de cet objet est définie sur true. Si vous supprimez tous les filtres, la valeur d'origine de cacheAsBitmap est restaurée.
Le filtre utilise la formule suivante :
dstPixel[x, y] = srcPixel[x + ((componentX(x, y) - 128) * scaleX) / 256, y + ((componentY(x, y) - 128) *scaleY) / 256)
où componentX(x, y) extrait la valeur de couleur de la propriété componentX de la propriété mapBitmap, à (x - mapPoint.x ,y - mapPoint.y).
L'image de mappage utilisée par le filtre est redimensionnée en fonction de l'échelle de la scène. Elle n'est en aucun cas redimensionnée lorsque l'objet l'est.
Ce filtre prend en charge le redimensionnement de la scène. Mais le redimensionnement général, la rotation et l'inclinaison ne sont pas gérés. Si l'objet lui-même est redimensionné (si les propriétés scaleX et scaleY ne correspondent pas à 1,0), l'effet du filtre n'est pas redimensionné. Le redimensionnement est effectué uniquement en cas de zoom avant sur la scène.
Voir aussi
| Propriété | Défini par | ||
|---|---|---|---|
| alpha : Number Spécifie la transparence alpha à utiliser pour les déplacements en dehors des limites. | DisplacementMapFilter | ||
| color : uint Spécifie la couleur à utiliser pour les déplacements en dehors des limites. | DisplacementMapFilter | ||
| componentX : uint Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat x. | DisplacementMapFilter | ||
| componentY : uint Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat y. | DisplacementMapFilter | ||
![]() | constructor : Object Référence à l'objet de classe ou à la fonction constructeur d'une occurrence donnée d'un objet. | Object | |
| mapBitmap : BitmapData Objet BitmapData contenant les données de mappage du déplacement. | DisplacementMapFilter | ||
| mapPoint : Point Valeur contenant le décalage du coin supérieur gauche de l'objet d'affichage cible par rapport au coin supérieur gauche de l'image de mappage. | DisplacementMapFilter | ||
| mode : String Mode du filtre. | DisplacementMapFilter | ||
![]() | prototype : Object [statique] Référence à l'objet prototype d'un objet de classe ou fonction. | Object | |
| scaleX : Number Multiplicateur à utiliser pour redimensionner le résultat du déplacement x à partir du calcul de mappage. | DisplacementMapFilter | ||
| scaleY : Number Multiplicateur à utiliser pour redimensionner le résultat du déplacement y à partir du calcul de mappage. | DisplacementMapFilter | ||
| Méthode | Défini par | ||
|---|---|---|---|
DisplacementMapFilter(mapBitmap:BitmapData = null, mapPoint:Point = null, componentX:uint = 0, componentY:uint = 0, scaleX:Number = 0.0, scaleY:Number = 0.0, mode:String = "wrap", color:uint = 0, alpha:Number = 0.0) Initialise une occurrence de DisplacementMapFilter avec les paramètres spécifiés. | DisplacementMapFilter | ||
Renvoie une copie de cet objet filtre. | DisplacementMapFilter | ||
![]() | Indique si la propriété spécifiée d'un objet est définie. | Object | |
![]() | Indique si une occurrence de la classe Object figure dans la chaîne de prototype de l'objet spécifié en tant que paramètre. | Object | |
![]() | Indique si la propriété spécifiée existe et est énumérable. | Object | |
![]() | Définit la disponibilité d'une propriété dynamique pour les opérations en boucle. | Object | |
![]() | Renvoie la représentation sous forme de chaîne de l'objet spécifié. | Object | |
![]() | Renvoie la valeur primitive de l'objet spécifié. | Object | |
| alpha | propriété |
alpha:Number [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Spécifie la transparence alpha à utiliser pour les déplacements en dehors des limites. Elle est spécifiée en tant que valeur normalisée comprise entre 0,0 et 1,0. Par exemple, 0,25 définit une valeur de transparence de 25 %. La valeur par défaut est 0. Utilisez cette propriété si la propriété mode est réglée sur DisplacementMapFilterMode.COLOR.
public function get alpha():Number public function set alpha(value:Number):void| color | propriété |
color:uint [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Spécifie la couleur à utiliser pour les déplacements en dehors des limites. La plage valide est comprise entre 0,0 et 1,0. Les valeurs sont au format hexadécimal. La valeur par défaut pour color est 0. Utilisez cette propriété si la propriété mode est réglée sur DisplacementMapFilterMode.COLOR.
public function get color():uint public function set color(value:uint):void| componentX | propriété |
componentX:uint [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat x. Les valeurs possibles sont les constantes BitmapDataChannel :
BitmapDataChannel.ALPHA
BitmapDataChannel.BLUE
BitmapDataChannel.GREEN
BitmapDataChannel.RED
public function get componentX():uint public function set componentX(value:uint):voidVoir aussi
| componentY | propriété |
componentY:uint [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat y. Les valeurs possibles sont les constantes BitmapDataChannel :
BitmapDataChannel.ALPHA
BitmapDataChannel.BLUE
BitmapDataChannel.GREEN
BitmapDataChannel.RED
public function get componentY():uint public function set componentY(value:uint):voidVoir aussi
| mapBitmap | propriété |
mapBitmap:BitmapData [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Objet BitmapData contenant les données de mappage du déplacement.
public function get mapBitmap():BitmapData public function set mapBitmap(value:BitmapData):voidTypeError — L'objet BitmapData prend la valeur null lors de sa définition. |
Voir aussi
| mapPoint | propriété |
mapPoint:Point [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Valeur contenant le décalage du coin supérieur gauche de l'objet d'affichage cible par rapport au coin supérieur gauche de l'image de mappage.
public function get mapPoint():Point public function set mapPoint(value:Point):voidTypeError — Le Point prend la valeur null lors de sa définition. |
Voir aussi
| mode | propriété |
mode:String [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Mode du filtre. Les valeurs possibles sont les constantes DisplacementMapFilterMode :
DisplacementMapFilterMode.WRAP — Ramène la valeur de déplacement à l'autre côté de l'image source.
DisplacementMapFilterMode.CLAMP — Corrige la valeur de déplacement en fonction du bord de l'image source.
DisplacementMapFilterMode.IGNORE — Si la valeur de déplacement est hors limites, ignore le déplacement et utilise le pixel source.
DisplacementMapFilterMode.COLOR — Si la valeur de déplacement est en dehors de l'image, remplace les valeurs des propriétés color et alpha.
public function get mode():String public function set mode(value:String):voidTypeError — La chaîne prend la valeur null lors de sa définition. | |
ArgumentError — La chaîne de mode ne correspond pas à un des types gérés. |
Voir aussi
| scaleX | propriété |
scaleX:Number [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Multiplicateur à utiliser pour redimensionner le résultat du déplacement x à partir du calcul de mappage.
public function get scaleX():Number public function set scaleX(value:Number):void| scaleY | propriété |
scaleY:Number [lecture-écriture] | Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Multiplicateur à utiliser pour redimensionner le résultat du déplacement y à partir du calcul de mappage.
public function get scaleY():Number public function set scaleY(value:Number):void| DisplacementMapFilter | () | Constructeur |
public function DisplacementMapFilter(mapBitmap:BitmapData = null, mapPoint:Point = null, componentX:uint = 0, componentY:uint = 0, scaleX:Number = 0.0, scaleY:Number = 0.0, mode:String = "wrap", color:uint = 0, alpha:Number = 0.0)| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Initialise une occurrence de DisplacementMapFilter avec les paramètres spécifiés.
ParamètresmapBitmap:BitmapData (default = null) — Objet BitmapData contenant les données de mappage du déplacement. | |
mapPoint:Point (default = null) — Valeur contenant le décalage du coin supérieur gauche de l'objet d'affichage cible par rapport au coin supérieur gauche de l'image de mappage. | |
componentX:uint (default = 0) —
Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat x. Les valeurs possibles sont les constantes BitmapDataChannel.
| |
componentY:uint (default = 0) —
Décrit le canal de couleur à utiliser dans l'image de mappage pour déplacer le résultat y. Les valeurs possibles sont les constantes BitmapDataChannel.
| |
scaleX:Number (default = 0.0) —
Multiplicateur à utiliser pour redimensionner le résultat du déplacement x à partir du calcul de mappage.
| |
scaleY:Number (default = 0.0) —
Multiplicateur à utiliser pour redimensionner le résultat du déplacement y à partir du calcul de mappage.
| |
mode:String (default = "wrap") — Mode du filtre. Les valeurs possibles sont les constantes DisplacementMapFilterMode. | |
color:uint (default = 0) —
Spécifie la couleur à utiliser pour les déplacements en dehors des limites. La plage valide est comprise entre 0,0 et 1,0. Utilisez ce paramètre si la propriété mode est réglée sur DisplacementMapFilterMode.COLOR.
| |
alpha:Number (default = 0.0) —
Spécifie la valeur alpha à utiliser pour les déplacements en dehors des limites. Elle est spécifiée en tant que valeur normalisée comprise entre 0,0 et 1,0. Par exemple, 0,25 définit une valeur de transparence de 25 %. Utilisez ce paramètre si la propriété mode est réglée sur DisplacementMapFilterMode.COLOR.
|
Voir aussi
| clone | () | méthode |
override public function clone():BitmapFilter| Version du langage: | ActionScript 3.0 |
| Versions du moteur d'exécution: | AIR 1.0 Flash Player 9 |
Renvoie une copie de cet objet filtre.
Valeur renvoyéeBitmapFilter — Nouvelle occurrence de DisplacementMapFilter dont les propriétés sont toutes identiques à celles de l'occurrence d'origine. |
draw() qui utilise les méthodes de la classe Graphics pour dessiner un carré avec un remplissage en dégradé radial. Remarquez que graphics est une propriété de l'objet DisplacementMapFilterExample qui étend Sprite.
createLabel() qui crée une zone de texte affichant la valeur de labelText et l'ajoute à la liste d'affichage.
createFilter() qui effectue les actions suivantes :
filter pour l'objet filtre.
getDisplacementMapFilter() et attribution de sa valeur renvoyée à la variable filter.
filter à la propriété filters de l'objet DisplacementFilterExample (la classe principale).
getBitmapFilter() crée un objet BitmapData nommé mapBitmap et lui attribue les résultat de la méthode createBitmapData(). L'objet mapBitmap, parallèlement à d'autres variables, définit un nouveau filtre de mappage du déplacement.
createBitmapData() crée un nouvel objet BitmapData basé sur le contenu actuel de l'objet DisplacementMapFilterExample. Un nouveau bitmap est créé d'après bitmapData et il est ajouté à la scène.
package {
import flash.display.Bitmap;
import flash.display.BitmapData;
import flash.display.BitmapDataChannel;
import flash.display.GradientType;
import flash.display.SpreadMethod;
import flash.display.Sprite;
import flash.filters.BitmapFilter;
import flash.filters.DisplacementMapFilter;
import flash.filters.DisplacementMapFilterMode;
import flash.geom.Matrix;
import flash.geom.Point;
import flash.text.TextField;
public class DisplacementMapFilterExample extends Sprite {
private var bgColor:uint = 0xFFCC00;
private var size:uint = 200;
private var offset:uint = 90;
private var labelText:String = "Watch the text bend with the displacement map";
public function DisplacementMapFilterExample() {
draw();
createLabel();
createFilter();
}
private function createFilter():void {
var filter:BitmapFilter = getBitmapFilter();
filters = new Array(filter);
}
private function getBitmapFilter():BitmapFilter {
var mapBitmap:BitmapData = createBitmapData();
var mapPoint:Point = new Point(0, 0);
var channels:uint = BitmapDataChannel.RED;
var componentX:uint = channels;
var componentY:uint = channels;
var scaleX:Number = 0.5;
var scaleY:Number = -30;
var mode:String = DisplacementMapFilterMode.CLAMP;
var color:uint = 0;
var alpha:Number = 0;
return new DisplacementMapFilter(mapBitmap,
mapPoint,
componentX,
componentY,
scaleX,
scaleY,
mode,
color,
alpha);
}
private function draw():void {
var matrix:Matrix = new Matrix();
matrix.createGradientBox(size, size);
graphics.beginGradientFill(GradientType.RADIAL,
[0xFF0000, 0x0000FF],
[100, 100],
[55, 200],
matrix,
SpreadMethod.PAD);
graphics.drawRect(0, 0, size, size);
}
private function createBitmapData():BitmapData {
var bitmapData:BitmapData = new BitmapData(size, size, true, bgColor);
bitmapData.draw(this, new Matrix());
var bitmap:Bitmap = new Bitmap(bitmapData);
bitmap.x = size;
addChild(bitmap);
return bitmapData;
}
private function createLabel():void {
var tf:TextField = new TextField();
tf.text = labelText;
tf.y = offset;
tf.width = size;
addChild(tf);
}
}
}