Apache Flex 4.16.1 API Reference | All Packages | All Classes | Index | Frames No Frames |
DisplacementMapFilter

Package | spark.filters
Class | public class DisplacementMapFilter
Inheritance | DisplacementMapFilter BaseFilter flash.events.EventDispatcher
Implements | IBitmapFilter

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

The DisplacementMapFilter class uses the pixel values from the specified BitmapData object (called the displacement map image) to perform a displacement of an object. You can use this filter to apply a warped or mottled effect to any object that inherits from the DisplayObject class, such as MovieClip, SimpleButton, TextField, and Video objects, as well as to BitmapData objects.

The use of filters depends on the object to which you apply the filter:

- To apply filters to a display object, use the `filters` property of the display object. Setting the `filters` property of an object does not modify the object, and you can remove the filter by clearing the `filters` property.
- To apply filters to BitmapData objects, use the `BitmapData.applyFilter()` method. Calling `applyFilter()` on a BitmapData object takes the source BitmapData object and the filter object and generates a filtered image.

If you apply a filter to a display object, the value of the `cacheAsBitmap` property of the display object is set to `true`. If you clear all filters, the original value of `cacheAsBitmap` is restored.

The filter uses the following formula:

    dstPixel[x, y] = srcPixel[x + ((componentX(x, y) - 128) * scaleX) / 256, y + ((componentY(x, y) - 128) *scaleY) / 256)

where `componentX(x, y)` gets the `componentX` property color value from the `mapBitmap` property at `(x - mapPoint.x ,y - mapPoint.y)`.

The map image used by the filter is scaled to match the Stage scaling. It is not scaled when the object itself is scaled.

This filter supports Stage scaling. However, general scaling, rotation, and skewing are not supported. If the object itself is scaled (if the `scaleX` and `scaleY` properties are set to a value other than 1.0), the filter effect is not scaled. It is scaled only when the user zooms in on the Stage.

MXML Syntax Show MXML Syntax
Hide MXML Syntax

The `<s:DisplacementMapFilter>` tag inherits all of the tag attributes of its superclass and adds the following tag attributes:

     <s:DisplacementMapFilter
       Properties
       alpha="0"
       color="0x000000"
       componentX="0"
       componentY="0"
       mapBitmap="null"
       mapPoint="null"
       mode="wrap"
       scaleX="0"
       scaleY="0"
     />

See also

flash.display.BitmapData.applyFilter()
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap

Public Properties

| Property | Defined By
--- | --- | ---
|  | alpha : Number Specifies the alpha transparency value to use for out-of-bounds displacements. | DisplacementMapFilter
|  | color : uint Specifies what color to use for out-of-bounds displacements. | DisplacementMapFilter
|  | componentX : uint Describes which color channel to use in the map image to displace the x result. | DisplacementMapFilter
|  | componentY : uint Describes which color channel to use in the map image to displace the y result. | DisplacementMapFilter
|  | mapBitmap : BitmapData A BitmapData object containing the displacement map data. | DisplacementMapFilter
|  | mapPoint : Point A value that contains the offset of the upper-left corner of the target display object from the upper-left corner of the map image. | DisplacementMapFilter
|  | mode : String The mode for the filter. | DisplacementMapFilter
|  | scaleX : Number The multiplier to use to scale the x displacement result from the map calculation. | DisplacementMapFilter
|  | scaleY : Number The multiplier to use to scale the y displacement result from the map calculation. | DisplacementMapFilter

Public Methods
Hide Inherited Public Methods
Show Inherited Public Methods

| Method | Defined By
--- | --- | ---
|  | 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) Constructor. | DisplacementMapFilter
|  | clone():BitmapFilter Returns a copy of this filter object. | DisplacementMapFilter
|  | notifyFilterChanged():void Propagates a change event when the filter has changed. | BaseFilter

Public Constants
Hide Inherited Public Constants
Show Inherited Public Constants

| Constant | Defined By
--- | --- | ---
|  | CHANGE : String = change [static] The string "change". | BaseFilter

Property Detail

alpha | property

`alpha:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Specifies the alpha transparency value to use for out-of-bounds displacements. It is specified as a normalized value from 0.0 to 1.0. For example, .25 sets a transparency value of 25%. The default value is 0. Use this property if the mode property is set to DisplacementMapFilterMode.COLOR.

The default value is `0`.

Implementation
`public function get alpha():Number`
`public function set alpha(value:Number):void`

color | property |

`color:uint`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Specifies what color to use for out-of-bounds displacements. The valid range of displacements is 0.0 to 1.0. Values are in hexadecimal format. The default value for color is 0. Use this property if the mode property is set to DisplacementMapFilterMode.COLOR.

The default value is `0x000000`.

Implementation
`public function get color():uint`
`public function set color(value:uint):void`

componentX | property |

`componentX:uint`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Describes which color channel to use in the map image to displace the x result. Possible values are BitmapDataChannel constants:

- `BitmapDataChannel.ALPHA`
- `BitmapDataChannel.BLUE`
- `BitmapDataChannel.GREEN`
- `BitmapDataChannel.RED`

The default value is `0, meaning no channel.`.

Implementation
`public function get componentX():uint`
`public function set componentX(value:uint):void`

See also

flash.display.BitmapDataChannel

componentY | property |

`componentY:uint`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Describes which color channel to use in the map image to displace the y result. Possible values are BitmapDataChannel constants:

- `BitmapDataChannel.ALPHA`
- `BitmapDataChannel.BLUE`
- `BitmapDataChannel.GREEN`
- `BitmapDataChannel.RED`

The default value is `0, meaning no channel.`.

Implementation
`public function get componentY():uint`
`public function set componentY(value:uint):void`

mapBitmap | property |

`mapBitmap:BitmapData`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

A BitmapData object containing the displacement map data.

The default value is `null`.

Implementation
`public function get mapBitmap():BitmapData`
`public function set mapBitmap(value:BitmapData):void`

mapPoint | property |

`mapPoint:Point`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

A value that contains the offset of the upper-left corner of the target display object from the upper-left corner of the map image.

The default value is `null`.

Implementation
`public function get mapPoint():Point`
`public function set mapPoint(value:Point):void`

mode | property |

`mode:String`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

The mode for the filter. Possible values are DisplacementMapFilterMode constants:

- `DisplacementMapFilterMode.WRAP` - Wraps the displacement value to the other side of the source image.
- `DisplacementMapFilterMode.CLAMP` - Clamps the displacement value to the edge of the source image.
- `DisplacementMapFilterMode.IGNORE` - If the displacement value is out of range, ignores the displacement and uses the source pixel.
- `DisplacementMapFilterMode.COLOR` - If the displacement value is outside the image, substitutes the values in the color and alpha properties.

The default value is `DisplacementMapFilterMode.WRAP`.

Implementation
`public function get mode():String`
`public function set mode(value:String):void`

scaleX | property |

`scaleX:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

The multiplier to use to scale the x displacement result from the map calculation.

The default value is `0`.

Implementation
`public function get scaleX():Number`
`public function set scaleX(value:Number):void`

scaleY | property |

`scaleY:Number`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

The multiplier to use to scale the y displacement result from the map calculation.

The default value is `0`.

Implementation
`public function get scaleY():Number`
`public function set scaleY(value:Number):void`
Constructor Detail

DisplacementMapFilter | () | 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)`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Constructor.

Parameters

| `mapBitmap:BitmapData` (default = `null`)`` — A BitmapData object containing the displacement map data.
| `mapPoint:Point` (default = `null`)`` — A value that contains the offset of the upper-left corner of the target display object from the upper-left corner of the map image.
| `componentX:uint` (default = `0`)`` — Describes which color channel to use in the map image to displace the x result. Possible values are the BitmapDataChannel constants.
| `componentY:uint` (default = `0`)`` — Describes which color channel to use in the map image to displace the y result. Possible values are the BitmapDataChannel constants.
| `scaleX:Number` (default = `0.0`)`` — The multiplier to use to scale the x displacement result from the map calculation.
| `scaleY:Number` (default = `0.0`)`` — The multiplier to use to scale the y displacement result from the map calculation.
| `mode:String` (default = `wrap`)`` — The mode of the filter. Possible values are the DisplacementMapFilterMode constants.
| `color:uint` (default = `0`)`` — Specifies the color to use for out-of-bounds displacements. The valid range of displacements is 0.0 to 1.0. Use this parameter if `mode` is set to `DisplacementMapFilterMode.COLOR`.
| `alpha:Number` (default = `0.0`)`` — Specifies what alpha value to use for out-of-bounds displacements. It is specified as a normalized value from 0.0 to 1.0. For example, .25 sets a transparency value of 25%. Use this parameter if `mode` is set to `DisplacementMapFilterMode.COLOR`.

See also

flash.display.BitmapDataChannel
flash.filters.DisplacementMapFilterMode
Method Detail

clone | () | method

`public function clone():BitmapFilter`

Language Version : | ActionScript 3.0

Product Version : | Flex 4

Runtime Versions : | Flash Player 10, AIR 1.5

Returns a copy of this filter object.

Returns

| `BitmapFilter` — A new DisplacementMapFilter instance with all the same properties as the original one.

Wed Nov 15 2017, 09:50 AM +01:00