Klasa: BitmapData
Kompatybilność: ActionScript 1.0, Flash8+
getColorBoundsRect(maska:Number, kolor:Number,[znalezionyKolor:Boolean]) : Rectangle
Parametry
maska:
Number - Heksodecymalna wartość koloru.
kolor:
Number - Heksodecymalna wartość koloru.
znalezionyKolor:
Boolean [opcjonalne] - Jeśli wartość jest ustawiona na TRUE, zwraca wtedy If the value is set to true
, zwraca granice kolorów wartość obrazu. Jeśli wartość jest ustawiona na FALSE, zwraca granice tam, gdzie kolor nie występuje w obrazie. Wartość domyślna to TRUE.
Określa prostokątny obszar, który w pełni otacza wszystkie piksele o określonym kolorze w bitmapie obrazu.
Dla przykładu, jeśli masz źródło obrazu oraz chcesz zdefiniować prostokąt tego obrazu, który zawiera kanał alpha, przekazujesz {maska: 0xFF000000, kolor: 0x00000000}
jako parametry. Wtedy cały obraz jest przeszukiwany dla granic wartości tych pikseli gdzie (wartość & maska) != kolor
. Aby zdefiniować białe znaki wokół obrazu, musisz przekazać {maska: 0xFFFFFFFF, kolor: 0xFFFFFFFF}
aby znaleźć granice nie białych pikseli.
Przykład:
import flash.display.BitmapData;
import flash.geom.Rectangle;
var mojBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(mojBitmapData, this.getNextHighestDepth());
mojBitmapData.fillRect(new Rectangle(0, 0, 50, 40), 0x00FF0000);
mc.onPress = function() {
var granicePikseli:Rectangle = mojBitmapData.getColorBoundsRect(0x00FFFFFF, 0x00FF0000, true);
trace(granicePikseli); // (x=0, y=0, w=50, h=40)
}
Listing
Ranga: Administrator serwisu Punktów: 0