| Pakket | flash.filters |
| Klasse | public final class DisplacementMapFilter |
| Overerving | DisplacementMapFilter BitmapFilter Object |
| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Het gebruik van filters is afhankelijk van het object waarop u het filter toepast:
- Wanneer u filters wilt toepassen op een weergaveobject, gebruikt u de eigenschap
filtersvan het weergaveobject. Het instellen van de eigenschapfiltersvan een object wijzigt het object niet en het filter kan ongedaan worden gemaakt door de eigenschapfilterste wissen. - Wanneer u filters wilt toepassen op objecten BitmapData, gebruikt u de methode
BitmapData.applyFilter(). WanneerapplyFilter()op een object BitmapData wordt aangeroepen, wordt aan de hand van het bronobject BitmapData en het filterobject een gefilterde afbeelding gegenereerd.
Wanneer u een filter toepast op een weergaveobject, wordt de waarde van de eigenschap cacheAsBitmap van het weergaveobject op true ingesteld. Wanneer u alle filters wist, wordt de oorspronkelijke waarde van cacheAsBitmap hersteld.
Het filter gebruikt de volgende formule:
dstPixel[x, y] = srcPixel[x + ((componentX(x, y) - 128) * scaleX) / 256, y + ((componentY(x, y) - 128) *scaleY) / 256)
waarbij componentX(x, y) de eigenschapskleurwaarde componentX van de eigenschap mapBitmap ophaalt bij (x - mapPoint.x ,y - mapPoint.y).
De kaartafbeelding die door het filter wordt gebruikt, is geschaald om overeen te komen met de schaal van het werkgebied. Deze wordt niet geschaald wanneer het object zelf wordt geschaald.
Dit filter ondersteunt werkgebiedschaling. Algemene schaling, rotatie en scheeftrekken worden echter niet ondersteund. Wanneer het object zelf wordt geschaald (wanneer de eigenschappen scaleX en scaleY worden ingesteld op een andere waarde dan 1,0), wordt het filter niet geschaald. Het wordt alleen geschaald wanneer de gebruiker op het werkgebied inzoomt.
Verwante API-elementen
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
| Eigenschap | Gedefinieerd door | ||
|---|---|---|---|
| alpha : Number
Geeft de alpha-transparantiewaarde op die voor verschuivingen buiten de grenzen moet worden gebruikt. | DisplacementMapFilter | ||
| color : uint
Geeft op welke kleur voor verschuivingen buiten de grenzen moet worden gebruikt. | DisplacementMapFilter | ||
| componentX : uint
Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het x-resultaat te verschuiven. | DisplacementMapFilter | ||
| componentY : uint
Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het y-resultaat te verschuiven. | DisplacementMapFilter | ||
![]() | constructor : Object
Verwijzing naar het klasseobject of de constructorfunctie van een bepaalde objectinstantie. | Object | |
| mapBitmap : BitmapData
Een object BitmapData met verschuivingskaartgegevens. | DisplacementMapFilter | ||
| mapPoint : Point
Een waarde die de verschuiving van de linkerbovenhoek van het doelweergaveobject vanaf de linkerbovenhoek van de kaartafbeelding aangeeft. | DisplacementMapFilter | ||
| mode : String
De modus voor het filter. | DisplacementMapFilter | ||
| scaleX : Number
De vermenigvuldiger die moet worden gebruikt om het x-verschuivingsresultaat van de verschuivingskaartberekening te schalen. | DisplacementMapFilter | ||
| scaleY : Number
De vermenigvuldiger die moet worden gebruikt om het y-verschuivingsresultaat van de verschuivingskaartberekening te schalen. | DisplacementMapFilter | ||
| Methode | Gedefinieerd door | ||
|---|---|---|---|
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)
Initialiseert een instantie DisplacementMapFilter met de opgegeven parameters. | DisplacementMapFilter | ||
[overschrijven]
Retourneert een kopie van dit filterobject. | DisplacementMapFilter | ||
![]() |
Geeft aan of voor een object een opgegeven eigenschap is gedefinieerd. | Object | |
![]() |
Geeft aan of een instantie van de klasse Object zich in de prototypeketen van het object bevindt dat als parameter is opgegeven. | Object | |
![]() |
Geeft aan of de opgegeven eigenschap bestaat en kan worden opgesomd. | Object | |
![]() |
Stelt de beschikbaarheid van een dynamische eigenschap voor lusbewerkingen in. | Object | |
![]() |
Geeft de tekenreeksweergave van dit object weer, geformatteerd volgens de locatiespecifieke conventies. | Object | |
![]() |
Retourneert een tekenreeksrepresentatie van het opgegeven object. | Object | |
![]() |
Retourneert de primitieve waarde van het opgegeven object. | Object | |
alpha | eigenschap |
alpha:Number| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Geeft de alpha-transparantiewaarde op die voor verschuivingen buiten de grenzen moet worden gebruikt. Deze wordt als een genormaliseerde waarde van 0,0 tot en met 1,0 opgegeven. De waarde .25 stelt bijvoorbeeld een transparantiewaarde in van 25%. De standaardwaarde is 0. Gebruik deze eigenschap wanneer de eigenschap mode opDisplacementMapFilterMode.COLOR is ingesteld.
Implementatie
public function get alpha():Number public function set alpha(value:Number):voidcolor | eigenschap |
color:uint| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Geeft op welke kleur voor verschuivingen buiten de grenzen moet worden gebruikt. De geldige reeks verschuivingen loopt van 0,0 tot en met 1,0. De waarden hebben een hexadecimale indeling. De standaardwaarde van color is 0. Gebruik deze eigenschap wanneer de eigenschap mode opDisplacementMapFilterMode.COLOR is ingesteld.
Implementatie
public function get color():uint public function set color(value:uint):voidcomponentX | eigenschap |
componentX:uint| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het x-resultaat te verschuiven. Mogelijke waarden zijn de BitmapDataChannel-constanten:
BitmapDataChannel.ALPHABitmapDataChannel.BLUEBitmapDataChannel.GREENBitmapDataChannel.RED
Implementatie
public function get componentX():uint public function set componentX(value:uint):voidVerwante API-elementen
componentY | eigenschap |
componentY:uint| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het y-resultaat te verschuiven. Mogelijke waarden zijn de BitmapDataChannel-constanten:
BitmapDataChannel.ALPHABitmapDataChannel.BLUEBitmapDataChannel.GREENBitmapDataChannel.RED
Implementatie
public function get componentY():uint public function set componentY(value:uint):voidVerwante API-elementen
mapBitmap | eigenschap |
mapBitmap:BitmapData| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Een object BitmapData met verschuivingskaartgegevens.
Implementatie
public function get mapBitmap():BitmapData public function set mapBitmap(value:BitmapData):voidGegenereerde uitzondering
TypeError — De BitmapData is null wanneer deze wordt ingesteld.
|
Verwante API-elementen
mapPoint | eigenschap |
mapPoint:Point| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Een waarde die de verschuiving van de linkerbovenhoek van het doelweergaveobject vanaf de linkerbovenhoek van de kaartafbeelding aangeeft.
Implementatie
public function get mapPoint():Point public function set mapPoint(value:Point):voidGegenereerde uitzondering
TypeError — De Point is null wanneer deze wordt ingesteld.
|
Verwante API-elementen
mode | eigenschap |
mode:String| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
De modus voor het filter. Mogelijke waarden zijn de DisplacementMapFilterMode-constanten:
DisplacementMapFilterMode.WRAP— Laat de verschuivingswaarde naar de andere kant van de bronafbeelding doorlopen.DisplacementMapFilterMode.CLAMP— Klemt de verschuivingswaarde vast aan de rand van de bronafbeelding.DisplacementMapFilterMode.IGNORE— Wanneer de verschuivingswaarde buiten bereik valt, wordt de verschuiving genegeerd en wordt de bronpixel gebruikt.DisplacementMapFilterMode.COLOR— Wanneer de verschuivingswaarde buiten de afbeelding valt, worden de waarden in de eigenschappencolorenalphavervangen.
Implementatie
public function get mode():String public function set mode(value:String):voidGegenereerde uitzondering
TypeError — De String is null wanneer deze wordt ingesteld.
| |
ArgumentError — De modustekenreeks is geen geldig type.
|
Verwante API-elementen
scaleX | eigenschap |
scaleX:Number| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
De vermenigvuldiger die moet worden gebruikt om het x-verschuivingsresultaat van de verschuivingskaartberekening te schalen.
Implementatie
public function get scaleX():Number public function set scaleX(value:Number):voidscaleY | eigenschap |
scaleY:Number| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
De vermenigvuldiger die moet worden gebruikt om het y-verschuivingsresultaat van de verschuivingskaartberekening te schalen.
Implementatie
public function get scaleY():Number public function set scaleY(value:Number):voidDisplacementMapFilter | () | Constructor |
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)| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Initialiseert een instantie DisplacementMapFilter met de opgegeven parameters.
ParametersmapBitmap:BitmapData (default = null) — Een object BitmapData met verschuivingskaartgegevens.
| |
mapPoint:Point (default = null) — Een waarde die de verschuiving van de linkerbovenhoek van het doelweergaveobject vanaf de linkerbovenhoek van de kaartafbeelding aangeeft.
| |
componentX:uint (default = 0) — Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het x-resultaat te verschuiven. Mogelijke waarden zijn de BitmapDataChannel-constanten.
| |
componentY:uint (default = 0) — Beschrijft welk kleurkanaal in de kaartafbeelding moet worden gebruikt om het y-resultaat te verschuiven. Mogelijke waarden zijn de BitmapDataChannel-constanten.
| |
scaleX:Number (default = 0.0) — De vermenigvuldiger die moet worden gebruikt om het x-verschuivingsresultaat van de verschuivingskaartberekening te schalen.
| |
scaleY:Number (default = 0.0) — De vermenigvuldiger die moet worden gebruikt om het y-verschuivingsresultaat van de verschuivingskaartberekening te schalen.
| |
mode:String (default = "wrap") — De modus van het filter Mogelijke waarden zijn de DisplacementMapFilterMode-constanten.
| |
color:uint (default = 0) — Geeft de kleur op voor verschuivingen buiten de grenzen. De geldige reeks verschuivingen loopt van 0,0 tot en met 1,0. Gebruik deze parameter wanneer mode opDisplacementMapFilterMode.COLOR is ingesteld.
| |
alpha:Number (default = 0.0) — Geeft op welke alpha moet worden gebruikt voor verschuivingen buiten de grenzen. Deze wordt als een genormaliseerde waarde van 0,0 tot en met 1,0 opgegeven. De waarde .25 stelt bijvoorbeeld een transparantiewaarde in van 25%. Gebruik deze parameter wanneer mode opDisplacementMapFilterMode.COLOR is ingesteld.
|
Verwante API-elementen
clone | () | methode |
override public function clone():BitmapFilter| Taalversie: | ActionScript 3.0 |
| Runtimeversies: | AIR 1.0, Flash Player 9 |
Retourneert een kopie van dit filterobject.
Geretourneerde waardeBitmapFilter — Een nieuwe instantie DisplacementMapFilter met dezelfde eigenschappen als de oorspronkelijke instantie.
|
- De klasse definieert variabelen voor de achtergrondkleur, voor het tekstveldlabel en voor de grootte en verschuiving die in verschillende functies wordt gebruikt.
- De constructorfunctie roept de methode
draw()aan, die de methoden van de klasse Graphics gebruikt om een vierkant met radiaal verlopende vulling te tekenen.graphicsis een eigenschap van het object DisplacementMapFilterExample, dat Sprite uitbreidt. - De constructorfunctie roept de methode
createLabel()aan, die een tekstveld maakt waarin de waarde vanlabelTextwordt weergegeven, en voegt dit toe aan het weergaveoverzicht. - De constructorfunctie roept de methode
createFilter()aan, die het volgende doet:- Maakt een variabele met de naam
filtervoor het filterobject. - Roept de methode
getDisplacementMapFilter()aan en wijst de geretourneerde waarde toe aan de variabelefilter. - Geeft
filterdoor aan de eigenschapfiltersvan het object DisplacementFilterExample (de hoofdklasse).
- Maakt een variabele met de naam
- De methode
getBitmapFilter()maakt een object BitmapData met de naammapBitmapen wijst er de resultaten van de methodecreateBitmapData()aan toe. Het objectmapBitmapdefinieert, samen met andere variabelen, een nieuw verschuivingsmapfilter. - De methode
createBitmapData()maakt een nieuw object BitmapData dat is gebaseerd op de huidige inhoud van het object DisplacementMapFilterExample. Het maakt een nieuwe bitmap op basis vanbitmapDataen voegt de bitmap toe aan het werkgebied.
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);
}
}
}
Wed Jun 13 2018, 11:42 AM Z
Overerfde openbare eigenschappen verbergen
Overerfde openbare eigenschappen weergeven