Paket | flash.filters |
Klasse | public final class GradientBevelFilter |
Vererbung | GradientBevelFilter BitmapFilter Object |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Die Verwendung von Filtern hängt davon ab, auf welches Objekt sie jeweils angewendet werden:
- Um Filter auf Anzeigeobjekte anzuwenden, verwenden Sie die
filters
-Eigenschaft. Durch die Einstellung derfilters
-Eigenschaft wird das betroffene Objekt selbst nicht verändert, und Sie können den Filter wieder entfernen, indem Sie diefilters
-Eigenschaft löschen. - Um Filter auf BitmapData-Objekte anzuwenden, verwenden Sie die
BitmapData.applyFilter()
-Methode. Durch den Aufruf vonapplyFilter()
bei einem BitmapData-Objekt wird das gefilterte Bild aus dem BitmapData-Quellobjekt und dem Filterobjekt generiert.
Wenn Sie einen Filter auf ein Anzeigeobjekt anwenden, wird die cacheAsBitmap
-Eigenschaft des Anzeigeobjekts auf true
gesetzt. Wenn Sie alle Filter entfernen, wird der ursprüngliche Wert von cacheAsBitmap
wiederhergestellt.
Dieser Filter unterstützt Bühnenskalierung. Allgemeine Skalierung, Drehung und Neigung werden dagegen nicht unterstützt. Wenn das Objekt selbst skaliert wird (also scaleX
und scaleY
ungleich 1,0 sind), wird der Filtereffekt nicht skaliert. Er wird nur dann skaliert, wenn die Bühne vergrößert dargestellt wird.
Ein Filter wird nicht angewendet, wenn das Ergebnisbild die maximalen Abmessungen überschreitet. In AIR 1.5 und Flash Player 10 beträgt die maximale Höhe oder Breite 8.191 Pixel; die gesamte Pixelzahl darf 16.777.215 nicht übersteigen. (Wenn ein Bild also 8.191 Pixel breit ist, darf es nur 2.048 Pixel hoch sein.) In Flash Player 9 und niedriger und AIR 1.1 und niedriger liegt die Grenze bei je 2.880 Pixel Höhe und Breite. Wenn Sie beispielsweise einen großen Movieclip mit aktiviertem Filter vergrößert darstellen, wird der Filter deaktiviert, sobald das Ergebnisbild die maximalen Abmessungen überschreitet.
Verwandte API-Elemente
flash.display.BitmapData.applyFilter()
BevelFilter
flash.display.DisplayObject.filters
flash.display.DisplayObject.cacheAsBitmap
Eigenschaft | Definiert von | ||
---|---|---|---|
alphas : Array
Ein Array mit Alphatransparenzwerten für die entsprechenden Farben im colors-Array. | GradientBevelFilter | ||
angle : Number
Der Winkel in Grad. | GradientBevelFilter | ||
blurX : Number
Der Grad der horizontalen Weichzeichnung. | GradientBevelFilter | ||
blurY : Number
Der Grad der vertikalen Weichzeichnung. | GradientBevelFilter | ||
colors : Array
Ein Array mit den im Farbverlauf zu verwendenden RGB-Hexadezimalfarbwerten. | GradientBevelFilter | ||
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
distance : Number
Der Offset-Abstand. | GradientBevelFilter | ||
knockout : Boolean
Gibt an, ob für das Objekt ein Aussparungseffekt definiert wurde. | GradientBevelFilter | ||
quality : int
Gibt an, wie oft der Filter angewendet werden soll. | GradientBevelFilter | ||
ratios : Array
Ein Array mit Farbverteilungsverhältnissen für die entsprechenden Farben im colors-Array. | GradientBevelFilter | ||
strength : Number
Die Stärke des Abdrucks oder Auftragens. | GradientBevelFilter | ||
type : String
Die Platzierung des Abschrägungsffekts. | GradientBevelFilter |
Methode | Definiert von | ||
---|---|---|---|
GradientBevelFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Initialisiert den Filter mit den angegebenen Parametern. | GradientBevelFilter | ||
[override]
Gibt eine Kopie dieses Filterobjekts zurück. | GradientBevelFilter | ||
Gibt an, ob für ein Objekt eine bestimmte Eigenschaft definiert wurde. | Object | ||
Gibt an, ob eine Instanz der Object-Klasse in der Prototypkette des Objekts vorhanden ist, das als Parameter angegeben wurde. | Object | ||
Gibt an, ob die angegebene Eigenschaft vorhanden ist und durchlaufen werden kann. | Object | ||
Legt die Verfügbarkeit einer dynamischen Eigenschaft für Schleifenoperationen fest. | Object | ||
Gibt die Stringdarstellung dieses Objekts zurück, formatiert entsprechend den Konventionen des Gebietsschemas. | Object | ||
Gibt das angegebene Objekt als String zurück. | Object | ||
Gibt den Grundwert des angegebenen Objekts zurück. | Object |
alphas | Eigenschaft |
alphas:Array
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Ein Array mit Alphatransparenzwerten für die entsprechenden Farben im colors
-Array. Die zulässigen Werte der einzelnen Elemente des Arrays liegen zwischen 0 und 1. Mit dem Wert 0,25 wird beispielsweise ein Transparenzwert von 25 % festgelegt.
Die alphas
-Eigenschaft kann nicht unmittelbar durch Änderung ihrer Werte geändert werden. Sie müssen vielmehr einen Verweis auf alphas
erstellen, dort die Änderungen vornehmen und dann alphas
auf den Verweis setzen.
Die Eigenschaften colors
, alphas
und ratios
stehen miteinander in Zusammenhang. Das erste Element im colors
-Array entspricht dem jeweils ersten Element im alphas
- und im ratios
-Array usw.
Implementierung
public function get alphas():Array
public function set alphas(value:Array):void
Auslöser
TypeError — Das Array ist leer, wenn gesetzt.
|
Verwandte API-Elemente
angle | Eigenschaft |
angle:Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Der Winkel in Grad. Die zulässigen Werte liegen zwischen 0 und 360. Der Standardwert ist 45.
Dieser Wert stellt den Winkel einer imaginären, das Objekt beleuchtenden Lichtquelle dar. Der Wert des Winkels bestimmt den Winkel, in dem die Farben des Farbverlaufs auf das Objekt angewendet werden: An welcher Stelle die Glanzlicht-Effekte und Schatten dargestellt bzw. die erste Farbe im Array angezeigt wird. Die Farben werden dann in der Reihenfolge ihrer Anordnung im Array angewendet.
Implementierung
public function get angle():Number
public function set angle(value:Number):void
Verwandte API-Elemente
blurX | Eigenschaft |
blurX:Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Der Grad der horizontalen Weichzeichnung. Die zulässigen Werte liegen zwischen 0 und 255. Eine Weichzeichnung mit einer Stärke von 1 oder weniger bedeutet, dass das Originalbild kopiert wird. Der Standardwert ist 4. Zweierpotenzen (z. B. 2, 4, 8, 16 und 32) sind optimiert und ergeben eine schnellere Anzeige als andere Werte.
Implementierung
public function get blurX():Number
public function set blurX(value:Number):void
blurY | Eigenschaft |
blurY:Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Der Grad der vertikalen Weichzeichnung. Die zulässigen Werte liegen zwischen 0 und 255. Eine Weichzeichnung mit einer Stärke von 1 oder weniger bedeutet, dass das Originalbild kopiert wird. Der Standardwert ist 4. Zweierpotenzen (z. B. 2, 4, 8, 16 und 32) sind optimiert und ergeben eine schnellere Anzeige als andere Werte.
Implementierung
public function get blurY():Number
public function set blurY(value:Number):void
colors | Eigenschaft |
colors:Array
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Ein Array mit den im Farbverlauf zu verwendenden RGB-Hexadezimalfarbwerten. Rot beispielsweise hat den Wert 0xFF0000, Blau den Wert 0x0000FF usw.
Die colors
-Eigenschaft kann nicht direkt durch Bearbeiten der entsprechenden Werte geändert werden. Sie müssen vielmehr einen Verweis auf colors
erstellen, dort die Änderungen vornehmen und dann colors
auf den Verweis setzen.
Die Eigenschaften colors
, alphas
und ratios
stehen miteinander in Zusammenhang. Das erste Element im colors
-Array entspricht dem jeweils ersten Element im alphas
- und im ratios
-Array usw.
Implementierung
public function get colors():Array
public function set colors(value:Array):void
Auslöser
TypeError — Das Array ist leer, wenn gesetzt.
|
Verwandte API-Elemente
distance | Eigenschaft |
knockout | Eigenschaft |
knockout:Boolean
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Gibt an, ob für das Objekt ein Aussparungseffekt definiert wurde. Mit einem Aussparungseffekt wird eine transparente Füllung des Objekts definiert, die Hintergrundfarbe des Dokuments wird sichtbar. Der Wert true
gibt an, dass ein Aussparungseffekt angewendet werden soll. Der Standardwert lautet false
(kein Aussparungseffekt).
Implementierung
public function get knockout():Boolean
public function set knockout(value:Boolean):void
quality | Eigenschaft |
quality:int
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Gibt an, wie oft der Filter angewendet werden soll. Der Standardwert lautet BitmapFilterQuality.LOW
, was einer einmaligen Anwendung des Filters entspricht. Mit dem Wert BitmapFilterQuality.MEDIUM
wird der Filter zweimal angewendet und mit dem Wert BitmapFilterQuality.HIGH
dreimal. Filter mit niedrigen Werten werden schneller dargestellt.
Bei den meisten Anwendungen genügt die Angabe der niedrigen, mittleren oder hohen Qualität für quality
. Sie können zwar Werte bis 15 angeben, um unterschiedliche Effekte zu erzielen, höhere Werte führen jedoch auch zu einer langsameren Darstellung. Anstatt also den Wert von quality
zu erhöhen, können Sie einen ähnlichen Effekt mit gleichzeitig schnellerer Darstellung erzielen, indem Sie einfach die Eigenschaftswerte von blurX
und blurY
erhöhen.
Implementierung
public function get quality():int
public function set quality(value:int):void
Verwandte API-Elemente
ratios | Eigenschaft |
ratios:Array
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Ein Array mit Farbverteilungsverhältnissen für die entsprechenden Farben im colors
-Array. Die zulässigen Werte der einzelnen Elemente des Arrays liegen zwischen 0 und 255.
Die ratios
-Eigenschaft kann nicht unmittelbar durch Bearbeitung ihrer Werte geändert werden. Sie müssen vielmehr einen Verweis auf ratios
erstellen, dort die Änderungen vornehmen und dann ratios
auf den Verweis setzen.
Die Eigenschaften colors
, alphas
und ratios
stehen miteinander in Zusammenhang. Das erste Element im colors
-Array entspricht dem jeweils ersten Element im alphas
- und im ratios
-Array usw.
Um zu verstehen, wie die Farben in einem Abschrägungsfilter mit Farbverlauf verteilt werden, wählen Sie zunächst die Farben aus, die Sie für den Effekt verwenden möchten. Beachten Sie, dass eine einfacher Abschrägungsfilter eine Glanzlicht- und eine Schattenfarbe definiert, während bei einem Abschrägungsfilter mit Farbverlauf für die Glanzlichtfarbe und den Schatten je ein Farbverlauf festgelegt werden. Es wird davon ausgegangen, dass das Glanzlicht in der oberen linken Ecke und der Schatten in der rechten unteren Ecke angezeigt wird. Daraus ergibt sich eine mögliche Verwendung des Filters mit je vier Farben im Glanzlicht- und im Schattenbereich. Zusätzlich zum Glanzlicht und dem Schatten wird bei diesem Filter eine Basisfüllung verwendet, die an den Kanten zwischen Glanzlicht und Schatten angezeigt wird. Aus diesem Grund handelt es sich um insgesamt neun Farben und damit auch um neun Elemente im ratios-Array.
Wenn man nun einen solchen Farbverlauf als Abfolge von Bändern unterschiedlicher in einander verlaufender Farben ansieht, gibt jeder „ratio“-Wert die Position der entsprechenden Farbe als Radius des Farbverlaufs an, wobei 0 den äußersten Punkt und 255 den innersten Punkt des Farbverlaufs bezeichnet. Im Normalfall liegt der Mittelwert bei 128. Dies entspricht dem Wert der Basisfüllung. Um im Bild unten den Abschrägungseffekt zu erzielen, weisen Sie anhand des Beispiels mit den neun Farben folgende „ratio“-Werte zu:
- Die ersten vier Farben liegen in einem Bereich zwischen 0 und 127. Der entsprechende Wert steigt jeweils an, sodass jeder Wert größer oder gleich dem vorherigen Wert ist. Dies ist die Kante der Abschrägung in Glanzlichtfarbe.
- Die fünfte (mittlere) Farbe ist die Basisfüllung und hat den Wert 128. Der Pixelwert 128 legt die Basisfüllung fest, die außerhalb der Form angezeigt wird (und die abgeflachten Kanten umgibt), wenn als Typ „outer“ festgelegt wurde. Wurde als Typ dagegen „inner“ angegeben, befindet sich die Basisfüllung innerhalb der Form und deckt praktisch die objekteigene Füllung ab.
- Die letzten vier Farben liegen im Bereich zwischen 129 und 255. Der entsprechende Wert steigt jeweils an, sodass jeder Wert größer oder gleich dem vorherigen Wert ist. Dies ist die Kante der Abschrägung in Schattenfarbe.
Wenn Sie an jeder Kante eine gleichmäßige Verteilung der Farbe erzielen möchten, müssen Sie eine ungerade Anzahl Farben angeben. Dabei definiert die mittlere Farbe die Basisfüllung. Verteilen Sie die Werte zwischen 0 und 127 oder zwischen 129 und 255 gleichmäßig auf die Farben, und ändern Sie dann die Werte, um die Breite der einzelnen Farbbänder im Farbverlauf anzupassen. Bei einem Farbverlauf mit neun Farben lautet ein Array möglicherweise [16, 32, 64, 96, 128, 160, 192, 224, 235]. Im folgenden Bild sind der Farbverlauf und die Abschrägung wie beschrieben dargestellt:
Beachten Sie hierbei, dass die Farben im Farbverlauf anhand der Werte der Eigenschaften blurX
, blurY
, strength
und quality
sowie der ratios
-Werte verteilt werden.
Implementierung
public function get ratios():Array
public function set ratios(value:Array):void
Auslöser
TypeError — Das Array ist leer, wenn gesetzt.
|
Verwandte API-Elemente
strength | Eigenschaft |
strength:Number
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Die Stärke des Abdrucks oder Auftragens. Je höher der Wert, desto mehr Farbe wird aufgetragen und desto stärker ist der Kontrast zwischen der Abschrägung und dem Hintergrund. Die zulässigen Werte liegen zwischen 0 und 255. Der Wert 0 bedeutet, dass der Filter nicht angewendet wird. Der Standardwert ist 1.
Implementierung
public function get strength():Number
public function set strength(value:Number):void
Verwandte API-Elemente
type | Eigenschaft |
type:String
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Die Platzierung des Abschrägungseffekts. Zulässige Werte sind die BitmapFilterType-Konstanten:
BitmapFilterType.OUTER
– Abschrägung an der Außenkante des ObjektsBitmapFilterType.INNER
– Abschrägung an der Innenkante des ObjektsBitmapFilterType.FULL
– Abschrägung auf dem Objekt
Implementierung
public function get type():String
public function set type(value:String):void
GradientBevelFilter | () | Konstruktor |
public function GradientBevelFilter(distance:Number = 4.0, angle:Number = 45, colors:Array = null, alphas:Array = null, ratios:Array = null, blurX:Number = 4.0, blurY:Number = 4.0, strength:Number = 1, quality:int = 1, type:String = "inner", knockout:Boolean = false)
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Initialisiert den Filter mit den angegebenen Parametern.
Parameterdistance:Number (default = 4.0 ) — Der Offset-Abstand. Die zulässigen Werte liegen zwischen 0 und 8.
| |
angle:Number (default = 45 ) — Der Winkel in Grad. Die zulässigen Werte liegen zwischen 0 und 360.
| |
colors:Array (default = null ) — Ein Array mit den im Farbverlauf zu verwendenden RGB-Hexadezimalfarbwerten. Rot beispielsweise hat den Wert 0xFF0000, Blau den Wert 0x0000FF usw.
| |
alphas:Array (default = null ) — Ein Array mit Alphatransparenzwerten für die entsprechenden Farben im colors -Array. Die zulässigen Werte der einzelnen Elemente des Arrays liegen zwischen 0 und 1. Mit dem Wert 0,25 wird beispielsweise ein Transparenzwert von 25 % festgelegt.
| |
ratios:Array (default = null ) — Ein Array mit Farbverteilungsverhältnissen. Die zulässigen Werte liegen zwischen 0 und 255.
| |
blurX:Number (default = 4.0 ) — Der Grad der horizontalen Weichzeichnung. Die zulässigen Werte liegen zwischen 0 und 255. Eine Weichzeichnung mit einer Stärke von 1 oder weniger bedeutet, dass das Originalbild kopiert wird. Der Standardwert ist 4. Zweierpotenzen (z. B. 2, 4, 8, 16 und 32) sind optimiert und ergeben eine schnellere Anzeige als andere Werte.
| |
blurY:Number (default = 4.0 ) — Der Grad der vertikalen Weichzeichnung. Die zulässigen Werte liegen zwischen 0 und 255. Eine Weichzeichnung mit einer Stärke von 1 oder weniger bedeutet, dass das Originalbild kopiert wird. Zweierpotenzen (z. B. 2, 4, 8, 16 und 32) sind optimiert und ergeben eine schnellere Anzeige als andere Werte.
| |
strength:Number (default = 1 ) — Die Stärke des Abdrucks oder Auftragens. Je höher der Wert, desto mehr Farbe wird aufgetragen und desto stärker ist der Kontrast zwischen der Abschrägung und dem Hintergrund. Die zulässigen Werte liegen zwischen 0 und 255. Der Wert 0 bedeutet, dass der Filter nicht angewendet wird.
| |
quality:int (default = 1 ) — Die Qualität des Filters. Verwenden Sie die BitmapFilterQuality-Konstanten:
Weitere Informationen finden Sie in der Beschreibung der | |
type:String (default = "inner ") — Die Platzierung des Abschrägungseffekts. Zulässige Werte sind die BitmapFilterType-Konstanten:
| |
knockout:Boolean (default = false ) — Gibt an, ob ein Aussparungseffekt angewendet wird. Mit true wird eine transparente Füllung des Objekts definiert, die Hintergrundfarbe des Dokuments wird sichtbar.
|
Verwandte API-Elemente
clone | () | Methode |
override public function clone():BitmapFilter
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9 |
Gibt eine Kopie dieses Filterobjekts zurück.
RückgabewerteBitmapFilter — Eine neue GradientBevelFilter-Instanz mit allen Eigenschaften der ursprünglichen GradientBevelFilter-Instanz.
|
- Importieren Sie die erforderlichen Klassen.
- Deklarieren Sie die globalen Variablen, mit denen das Quadrat und der Filter definiert werden.
- Erstellen Sie die Konstruktorfunktionen, die Folgendes bewirkt:
- Ruft die
draw()
-Methode auf. Diese Methode verwendet Methoden der Graphics-Klasse, auf die über die Eigenschaftgraphics
der Klasse Sprite zugegriffen wird, um ein graues Quadrat zu zeichnen. - Erstellt ein BitmapFilter-Objekt mit dem Namen
filter
und weist ihm den Wert zu, der sich aus dem Aufruf vongetBitmapFilter()
ergibt, mit dem der Filter erstellt wird. - Erstellt ein neues Array mit dem Namen
myFilters
und fügtfilter
hinzu. - Weist
myFilters
derfilters
-Eigenschaft des GradientBevelFilterExample-Objekts zu. Dadurch werden alle inmyFilters
vorgefundenen Filter angewendet; in diesem Fall nurfilter
.
- Ruft die
package { import flash.display.Sprite; import flash.filters.BitmapFilter; import flash.filters.BitmapFilterQuality; import flash.filters.BitmapFilterType; import flash.filters.GradientBevelFilter; public class GradientBevelFilterExample extends Sprite { private var bgColor:uint = 0xCCCCCC; private var size:uint = 80; private var offset:uint = 50; private var distance:Number = 5; private var angleInDegrees:Number = 225; // opposite 45 degrees private var colors:Array = [0xFFFFFF, 0xCCCCCC, 0x000000]; private var alphas:Array = [1, 0, 1]; private var ratios:Array = [0, 128, 255]; private var blurX:Number = 8; private var blurY:Number = 8; private var strength:Number = 2; private var quality:Number = BitmapFilterQuality.HIGH private var type:String = BitmapFilterType.INNER; private var knockout:Boolean = true; public function GradientBevelFilterExample() { draw(); var filter:BitmapFilter = getBitmapFilter(); var myFilters:Array = new Array(); myFilters.push(filter); filters = myFilters; } private function getBitmapFilter():BitmapFilter { return new GradientBevelFilter(distance, angleInDegrees, colors, alphas, ratios, blurX, blurY, strength, quality, type, knockout); } private function draw():void { graphics.beginFill(bgColor); graphics.drawRect(offset, offset, size, size); graphics.endFill(); } } }
Tue Jun 12 2018, 10:04 AM Z