Klasa: BitmapData
Kompatybilność: ActionScript 1.0, Flash8+
public threshold(źródÅ‚oBitmapy:BitmapData, źródÅ‚oProstokÄ…ta:Rectangle, punkt:Point, operacja:String, próg:Number, [kolor:Number], [maska:Number], [kopia:Boolean]) : Number
Parametery
źródÅ‚o:
BitmapData - Wejściowy obraz do użycia.
źródÅ‚oProstokÄ…t:
Rectangle - ProstokÄ…, który definiuje obszar źródÅ‚oego obrazu.
punkt:
Point - Punkt, w którym sie znajduje prawy górny róg obrazu źródÅ‚a prostokÄ…ta.
operacja:
String - Jeden z poniższych operatorów porównawczych może być użyty: "<", "<=", ">", ">=", "==", "!="
próg:
Number - Wartość, przez którÄ… każdy piksel zostaje porównywany, aby sprawdzić czy przekroczyÅ‚ odpowiedni próg.
kolor:
Number [opcjonalny] - Wartość koloru, którym zostanie wypeÅ‚niony piksel, który przekroczyÅ‚ próg. DomyÅ›lna wartość to 0x00000000.
maska:
Number [opcjonalny] - Maska do użycia aby zaizolować kolor komponentu. Domyślna warotść to 0xFFFFFFFF.
kopia:
Boolean [opcjonalny] - Wartość logiczna. JeÅ›li wartość wynosi TRUE, wtedy wartość pikselu ze źródÅ‚a obrazu jest kopiowana do docelowego obrazu kiedy test progu zawali jakis piksel. JeÅ›li wartoÅ›c wynosi FALSE, wtedy źródÅ‚o obrazu nie jest kopiowany kiedy piksel zawali test progu. DomyÅ›lnie jest FALSE.
Opis:
Testuje wartoÅ›ci pikseli w obrazie wobec specyfikowanej wartoÅ›ci progu, oraz ustawia piksele, które przeszÅ‚y pozytywnie test progu na nowÄ… wartość koloru.
Instrukcja jak działa test progu:
if ((wartośćPikselu & maska) operacja (próg & maska)) wtedy
zmień kolor pikselu
else
if (kopia) wtedy
ustaw piksel do korespondujÄ…ego wartoÅ›ci pikselu z źródÅ‚aBitmapy
Parametr operacja
oznacza sposób porównania jako operator logiczny. Dla przykÅ‚adu użycie
"==", spowoduje specyfikacje określonego koloru do eliminacji lub wypełnienia.
Lub użycie
{operacja: "<", maska: 0xFF000000, prog: 0x7f000000, kolor: 0x00000000}
,
spowoduje ustawienia wszystkich pikseli, do pełnie przezroczystych, kiedy
piksele ze źródÅ‚a obrazu alfa jest mniejszyniż 0x7F. Możesz użyć tej techniki
dla animowania lub innych efektów.
Przykład:
import flash.display.BitmapData;
import flash.geom.Rectangle;
import flash.geom.Point;
var myBitmapData:BitmapData = new BitmapData(100, 80, false, 0x00CCCCCC);
var mc:MovieClip = this.createEmptyMovieClip("mc", this.getNextHighestDepth());
mc.attachBitmap(myBitmapData, this.getNextHighestDepth());
myBitmapData.fillRect(new Rectangle(0, 0, 50, 80), 0x00FF0000);
mc.onPress = function() {
myBitmapData.threshold(myBitmapData, new Rectangle(0, 0, 100, 40), new Point(0, 0), "==", 0x00CCCCCC, 0x000000FF, 0x00FF0000, false);
}
Listing
Ranga: Administrator serwisu Punktów: 38473

