Paket | flash.filters |
Sınıf | public final class DisplacementMapFilter |
Miras Alma | DisplacementMapFilter BitmapFilter Object |
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Filtrelerin kullanımı, filtreyi uyguladığınız nesneye bağlıdır.
- Filtreleri bir görüntüleme nesnesine uygulamak için görüntüleme nesnesinin
filters
özelliğini kullanın. Nesneninfilters
özelliğini ayarladığınızda nesne değiştirilmez vefilters
özelliğini temizleyerek filtreyi kaldırabilirsiniz. - BitmapData nesnelerine filtre uygulamak için
BitmapData.applyFilter()
yöntemini kullanın. Bir BitmapData nesnesi üzerindeapplyFilter()
kullanıldığında kaynak BitmapData nesnesi ve filtre nesnesi alınır ve filtrelenmiş bir görüntü oluşturur.
Bir görüntüleme nesnesine filtre uygularsanız, görüntüleme nesnesinin cacheAsBitmap
özelliğinin değeri true
olarak ayarlanır. Tüm filtreleri temizlerseniz, orijinal cacheAsBitmap
değeri geri yüklenir.
Filtre şu biçimleri kullanır:
dstPixel[x, y] = srcPixel[x + ((componentX(x, y) - 128) * scaleX) / 256, y + ((componentY(x, y) - 128) *scaleY) / 256)
componentX(x, y)
özelliğinin (x - mapPoint.x ,y - mapPoint.y)
değerinde mapBitmap
özelliğinden componentX
özelliği renk değerini aldığı yer.
Filtre tarafından kullanılan eşlem görüntüsü, Sahne Alanı ölçeklemesiyle eşleşecek şekilde ölçeklenir. Nesnenin kendisi ölçeklenmediğinde ölçeklenmez.
Bu filtre Sahne Alanı ölçeklemesini destekler. Ancak genel ölçekleme, döndürme ve eğim desteklenmez. Nesnenin kendisi ölçeklenmezse (scaleX
ve scaleY
özellikleri 1,0'dan başka bir değere ayarlanmışsa) filtre efekti ölçeklenmez. Yalnızca kullanıcı Sahne Alanı'na yakınlaştırma yaptığında ölçeklenir.
İlgili API Öğeleri
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
Özellik | Tanımlayan: | ||
---|---|---|---|
alpha : Number
Sınır dışı yer değiştirmeler için hangi alfa saydamlık değerinin kullanılacağını belirtir. | DisplacementMapFilter | ||
color : uint
Sınır dışı yer değiştirmeler için hangi rengin kullanılacağını belirtir. | DisplacementMapFilter | ||
componentX : uint
Eşlem görüntüsünde x sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını açıklar. | DisplacementMapFilter | ||
componentY : uint
Eşlem görüntüsünde y sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını betimler. | DisplacementMapFilter | ||
constructor : Object
Belirli bir nesne örneği için sınıf nesnesine veya yapıcı işlevine bir başvuru. | Object | ||
mapBitmap : BitmapData
Yer değiştirme eşlem verilerini içeren BitmapData nesnesi. | DisplacementMapFilter | ||
mapPoint : Point
Hedef ekran nesnesinin sol üst köşesinin, eşlem görüntüsünün sol üst köşesinden uzaklığını içeren bir değer. | DisplacementMapFilter | ||
mode : String
Filtre için mod. | DisplacementMapFilter | ||
scaleX : Number
Eşleme hesaplamasından elde edilen x yer değiştirme sonucunu ölçeklemek için kullanılacak çarpan. | DisplacementMapFilter | ||
scaleY : Number
Eşleme hesaplamadan elde edilen y yer değiştirme sonucunu ölçeklemek için kullanılacak çarpan. | DisplacementMapFilter |
Yöntem | Tanımlayan: | ||
---|---|---|---|
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)
Belirtilen parametreler ile bir DisplacementMapFilter örneği başlatır. | DisplacementMapFilter | ||
[geçersiz kıl]
Bu filtre nesnesinin kopyasını döndürür. | DisplacementMapFilter | ||
Bir nesnenin belirli bir özelliğinin tanımlı olup olmadığını gösterir. | Object | ||
Object sınıfının bir örneğinin parametre olarak belirtilen nesnenin prototip zincirinde olup olmadığını gösterir. | Object | ||
Belirtilen özelliğin bulunup bulunmadığını ve numaralandırılabilir olup olmadığını gösterir. | Object | ||
Dinamik bir özelliğin döngü işlemlerinde kullanılabilirliğini ayarlar. | Object | ||
Bu nesnenin, yerel ayara özel kurallara göre biçimlendirilmiş dize temsilini döndürür. | Object | ||
Belirtilen nesnenin dize olarak temsil edilen halini döndürür. | Object | ||
Belirtilen nesnenin temel değerini döndürür. | Object |
alpha | özellik |
alpha:Number
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Sınır dışı yer değiştirmeler için hangi alfa saydamlık değerinin kullanılacağını belirtir. 0,0 ile 1,0 arasında normalleştirilmiş bir değer olarak belirtilir. Örneğin ,25, %25'lik bir saydamlık değeri ayarlar. Varsayılan değer 0'dır. mode
özelliği DisplacementMapFilterMode.COLOR
olarak ayarlanmışsa bu özelliği kullanın.
Uygulama
public function get alpha():Number
public function set alpha(value:Number):void
color | özellik |
color:uint
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Sınır dışı yer değiştirmeler için hangi rengin kullanılacağını belirtir. Geçerli yer değiştirme aralığı 0,0 ila 1,0'dır. Değerler onaltılık biçimdedir. color
için varsayılan değer 0'dır. mode
özelliği DisplacementMapFilterMode.COLOR
olarak ayarlanmışsa bu özelliği kullanın.
Uygulama
public function get color():uint
public function set color(value:uint):void
componentX | özellik |
componentX:uint
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Eşlem görüntüsünde x sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını betimler. Olası değerler BitmapDataChannel sabitleridir:
BitmapDataChannel.ALPHA
BitmapDataChannel.BLUE
BitmapDataChannel.GREEN
BitmapDataChannel.RED
Uygulama
public function get componentX():uint
public function set componentX(value:uint):void
İlgili API Öğeleri
componentY | özellik |
componentY:uint
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Eşlem görüntüsünde y sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını betimler. Olası değerler BitmapDataChannel sabitleridir:
BitmapDataChannel.ALPHA
BitmapDataChannel.BLUE
BitmapDataChannel.GREEN
BitmapDataChannel.RED
Uygulama
public function get componentY():uint
public function set componentY(value:uint):void
İlgili API Öğeleri
mapBitmap | özellik |
mapBitmap:BitmapData
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Yer değiştirme eşlem verilerini içeren BitmapData nesnesi.
Uygulama
public function get mapBitmap():BitmapData
public function set mapBitmap(value:BitmapData):void
Atar
TypeError — BitmapData öğesi ayarlanırken boş değere sahiptir
|
İlgili API Öğeleri
mapPoint | özellik |
mapPoint:Point
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Hedef ekran nesnesinin sol üst köşesinin, eşlem görüntüsünün sol üst köşesinden uzaklığını içeren bir değer.
Uygulama
public function get mapPoint():Point
public function set mapPoint(value:Point):void
Atar
TypeError — Point öğesi ayarlanırken boş değere sahiptir
|
İlgili API Öğeleri
mode | özellik |
mode:String
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Filtre için mod. Olası değerler DisplacementMapFilterMode sabitleridir:
DisplacementMapFilterMode.WRAP
— Yer değiştirme değerini kaynak görüntüsünün diğer kenarına sarar.DisplacementMapFilterMode.CLAMP
— Yer değiştirme değerini kaynak görüntüsünün kenarına kelepçeler.DisplacementMapFilterMode.IGNORE
— Yer değiştirme değeri aralık dışıysa yer değiştirmeyi yok sayar ve kaynak pikselini kullanır.DisplacementMapFilterMode.COLOR
— Yer değiştirme değeri görüntünün dışındaysa, yerinecolor
vealpha
özelliklerindeki değerleri koyar.
Uygulama
public function get mode():String
public function set mode(value:String):void
Atar
TypeError — String öğesi ayarlanırken boş değere sahiptir
| |
ArgumentError — Mod dizesi geçerli türlerden biri değildir
|
İlgili API Öğeleri
scaleX | özellik |
scaleY | özellik |
DisplacementMapFilter | () | Yapıcı |
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)
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Belirtilen parametreler ile bir DisplacementMapFilter örneği başlatır.
ParametrelermapBitmap:BitmapData (default = null ) — Yer değiştirme eşlem verilerini içeren BitmapData nesnesi.
| |
mapPoint:Point (default = null ) — Hedef ekran nesnesinin sol üst köşesinin, eşlem görüntüsünün sol üst köşesinden uzaklığını içeren bir değer.
| |
componentX:uint (default = 0 ) — Eşlem görüntüsünde x sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını betimler. Olası değerler BitmapDataChannel sabitleridir.
| |
componentY:uint (default = 0 ) — Eşlem görüntüsünde y sonucunun yerini değiştirmek için hangi renk kanalının kullanılacağını betimler. Olası değerler BitmapDataChannel sabitleridir.
| |
scaleX:Number (default = 0.0 ) — Eşleme hesaplamasından elde edilen x yer değiştirme sonucunu ölçeklemek için kullanılacak çarpan.
| |
scaleY:Number (default = 0.0 ) — Eşleme hesaplamasından elde edilen y yer değiştirme sonucunu ölçeklemek için kullanılacak çarpan.
| |
mode:String (default = "wrap ") — Filtrenin modu. Olası değerler DisplacementMapFilterMode sabitleridir.
| |
color:uint (default = 0 ) — Sınır dışı yer değiştirmeler için hangi rengin kullanılacağını belirtir. Geçerli yer değiştirme aralığı 0,0 ila 1,0'dır. mode öğesi DisplacementMapFilterMode.COLOR olarak ayarlanmışsa bu parametreyi kullanın.
| |
alpha:Number (default = 0.0 ) — Sınır dışı yer değiştirmeler için hangi alfa değerinin kullanılacağını belirtir. 0,0 ile 1,0 arasında normalleştirilmiş bir değer olarak belirtilir. Örneğin, 25, %25'lik bir saydamlık değeri ayarlar. mode öğesi DisplacementMapFilterMode.COLOR olarak ayarlanmışsa bu parametreyi kullanın.
|
İlgili API Öğeleri
clone | () | yöntem |
override public function clone():BitmapFilter
Dil Sürümü: | ActionScript 3.0 |
Çalışma Zamanı Sürümleri: | AIR 1.0, Flash Player 9 |
Bu filtre nesnesinin kopyasını döndürür.
DöndürürBitmapFilter — Orijinal DisplacementMapFilter örneğiyle tamamen aynı özelliklere sahip yeni bir DisplacementMapFilter örneği.
|
- Bu sınıf, çeşitli işlevlerde kullanılacak arka plan rengi, metin alanı etiketi, boyut ve uzaklık için değişkenler tanımlar.
- Yapıcı işlevi, radyal degrade dolgulu kare çizmek için Graphics sınıfının yöntemlerini kullanan
draw()
yöntemini çağırır.graphics
, Sprite öğesini uzatan DisplacementMapFilterExample nesnesinin bir özelliğidir. - Yapıcı işlevi
labelText
değerini görüntüleyen bir metin alanı oluşturan ve bunu görüntüleme listesine ekleyencreateLabel()
yöntemini çağırır. - Yapıcı işlevi aşağıdakileri gerçekleştiren
createFilter()
yöntemini çağırır:- Filtre nesnesi için
filter
adlı bir değişken oluşturur. getDisplacementMapFilter()
yöntemini çağırır ve bunun dönüş değerinifilter
değişkenine atar.filter
öğesini DisplacementFilterExample nesnesininfilters
nesnesine aktarır (ana sınıf).
- Filtre nesnesi için
getBitmapFilter()
yöntemimapBitmap
adlı bir BitmapData nesnesi oluşturur ve bunacreateBitmapData()
yönteminin sonuçlarını atar.mapBitmap
nesnesi diğer değişkenlerle birlikte yeni bir yer değiştirme eşleme filtresi tanımlar.createBitmapData()
yöntemi DisplacementMapFilterExample nesnesinin o andaki içeriğine bağlı olan yeni bir BitmapData nesnesi oluşturur.bitmapData
öğesine bağlı olarak yeni bir bitmap oluşturur ve bu bitmap'i Sahne Alanı'na ekler.
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); } } }
Tue Jun 12 2018, 01:09 PM Z