Paket | flash.geom |
Klasse | public class Transform |
Vererbung | Transform Object |
Unterklassen | Transform |
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
concatenatedColorTransform
und concatenatedMatrix
zugreifen.
So wenden Sie Farbtransformationen an: Erstellen Sie ein ColorTransform-Objekt, stellen Sie die Farbanpassungen mit den Methoden und Eigenschaften des Objekts ein und weisen Sie dann die colorTransformation
-Eigenschaft der transform
-Eigenschaft des Anzeigeobjekts dem neuen ColorTransformation-Objekt zu.
So wenden Sie zweidimensionale Transformationen an: Erstellen Sie ein Matrixobjekt, legen Sie die zweidimensionale Transformation fest und weisen Sie dann die transform.matrix
-Eigenschaft des Anzeigeobjekts dem neuen Matrixobjekt zu.
So wenden Sie dreidimensionale Transformationen an: Beginnen Sie mit einem dreidimensionalen Anzeigeobjekt. Die z
-Eigenschaft eines dreidimensionalen Anzeigeobjekts weist einen von null verschiedenen Wert auf. Sie brauchen das Matrix3D-Objekt nicht zu erstellen. Für alle dreidimensionalen Objekte wird automatisch ein Matrix3D-Objekt erstellt, wenn Sie einem Anzeigeobjekt einen z
-Wert zuweisen. Sie können über die transform
-Eigenschaft des Anzeigeobjekts auf das Matrix3D-Objekt des Anzeigeobjekts zugreifen. Mit den Methoden der Matrix3D-Klasse können Sie Transformationseinstellungen hinzufügen oder die vorhandenen ändern. Sie können auch ein benutzerdefiniertes Matrix3D-Objekt erstellen, die Transformationselemente des benutzerdefinierten Matrix3D-Objekts einstellen und das neue Matrix3D-Objekt dann mit der transform.matrix
-Eigenschaft dem Anzeigeobjekt zuweisen.
So ändern Sie eine Perspektivenprojektion der Bühne oder des Stammobjekts: Verwenden Sie die transform.matrix
-Eigenschaft des Stammanzeigeobjekts, um Zugriff auf das PerspectiveProjection-Objekt zu erlangen. Oder wenden Sie andere Perspektivenprojektionseigenschaften auf ein Anzeigeobjekt an, indem Sie die Perspektivenprojektionseigenschaften des übergeordneten Objekts des Anzeigeobjekts einstellen. Das untergeordnete Anzeigeobjekt übernimmt die neuen Eigenschaften. Erstellen Sie ein PerspectiveProjection-Objekt und stellen Sie seine Eigenschaften ein; weisen Sie das PerspectiveProjection-Objekt dann der perspectiveProjection
-Eigenschaft der transform
-Eigenschaft des übergeordneten Anzeigeobjekts zu. Die angegebene Projektionstransformation wird dann auf alle untergeordneten dreidimensionalen Objekte des Anzeigeobjekts angewendet.
Da sowohl PerspectiveProjection- als auch Matrix3D-Objekte Perspektiventransformationen ausführen, sollten Sie nicht beide gleichzeitig einem Anzeigeobjekt zuweisen. Verwenden Sie das PerspectiveProjection-Objekt für Änderungen der Brennweite und der Projektionsmitte. Um die Perspektiventransformation besser steuern zu können, erstellen Sie ein Perspektivenprojektions-Matrix3D-Objekt.
Verwandte API-Elemente
flash.geom.ColorTransform
flash.geom.Matrix
flash.geom.Matrix3D
flash.geom.PerspectiveProjection
Eigenschaft | Definiert von | ||
---|---|---|---|
colorTransform : flash.geom:ColorTransform
Ein ColorTransform-Objekt mit Werten, die sämtliche Farben im Anzeigeobjekt ändern. | Transform | ||
concatenatedColorTransform : flash.geom:ColorTransform [schreibgeschützt]
Ein ColorTransform-Objekt, das die kombinierten auf das Anzeigeobjekt und alle übergeordneten Objekte angewendeten Farbtransformationen bis hin zur Stammebene angibt. | Transform | ||
concatenatedMatrix : Matrix [schreibgeschützt]
Ein Matrix-Objekt, das die kombinierten Transformationsmatrizen des Anzeigeobjekts und aller übergeordneten Objekte bis hin zur Stammebene angibt. | Transform | ||
constructor : Object
Ein Verweis auf das Klassenobjekt oder die Konstruktorfunktion für eine angegebene Objektinstanz. | Object | ||
matrix : Matrix
Ein Matrix-Objekt mit Werten, die die Skalierung, Drehung und Versetzung des Anzeigeobjekts ändern. | Transform | ||
matrix3D : Matrix3D
Erlaubt den Zugriff auf das Matrix3D-Objekt eines dreidimensionalen Anzeigeobjekts. | Transform | ||
perspectiveProjection : PerspectiveProjection
Erlaubt den Zugriff auf das PerspectiveProjection-Objekt eines dreidimensionalen Anzeigeobjekts. | Transform | ||
pixelBounds : Rectangle [schreibgeschützt]
Ein Rectangle-Objekt, das das Begrenzungsrechteck des Anzeigeobjekts auf der Bühne definiert. | Transform |
Methode | Definiert von | ||
---|---|---|---|
Gibt ein Matrix3D-Objekt zurück, das den Raum eines angegebenen Anzeigeobjekts relativ zu seinem derzeitigen Raum transformiert. | Transform | ||
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 |
colorTransform | Eigenschaft |
colorTransform:flash.geom:ColorTransform
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ein ColorTransform-Objekt mit Werten, die sämtliche Farben im Anzeigeobjekt ändern.
Implementierung
public function get colorTransform():flash.geom:ColorTransform
public function set colorTransform(value:flash.geom:ColorTransform):void
Auslöser
TypeError — Der Wert von colorTransform lautet beim Einstellen „null“.
|
Verwandte API-Elemente
concatenatedColorTransform | Eigenschaft |
concatenatedColorTransform:flash.geom:ColorTransform
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ein ColorTransform-Objekt, das die kombinierten auf das Anzeigeobjekt und alle übergeordneten Objekte angewendeten Farbtransformationen bis hin zur Stammebene angibt. Wenn verschiedene Farbtransformationen auf unterschiedlichen Ebenen angewendet wurden, werden diese bei dieser Eigenschaft in einem ColorTransform-Objekt verknüpft.
Implementierung
public function get concatenatedColorTransform():flash.geom:ColorTransform
Verwandte API-Elemente
concatenatedMatrix | Eigenschaft |
concatenatedMatrix:Matrix
[schreibgeschützt] Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ein Matrix-Objekt, das die kombinierten Transformationsmatrizen des Anzeigeobjekts und aller übergeordneten Objekte bis hin zur Stammebene angibt. Wenn verschiedene Transformationsmatrizen auf unterschiedlichen Ebenen angewendet wurden, werden sie für diese Eigenschaft in einer Matrix verknüpft. Bei größenveränderbaren, im Browser ausgeführten SWF-Inhalten berücksichtigt diese Eigenschaft auch den Unterschied zwischen Bühnenkoordinaten und Fensterkoordinaten, der durch die Änderung der Fenstergröße entsteht. Somit konvertiert diese Eigenschaft lokale Koordinaten in Fensterkoordinaten, die nicht notwendigerweise dem Koordinatenraum der Bühne entsprechen.
Implementierung
public function get concatenatedMatrix():Matrix
matrix | Eigenschaft |
matrix:Matrix
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | AIR 1.0, Flash Player 9, Flash Lite 4 |
Ein Matrix-Objekt mit Werten, die die Skalierung, Drehung und Versetzung des Anzeigeobjekts ändern.
Wenn die matrix
-Eigenschaft auf einen Wert (nicht null
) eingestellt ist, ist die matrix3D
-Eigenschaft null
. Und wenn die matrix3D
-Eigenschaft auf einen Wert (nicht null
) eingestellt ist, ist die matrix
-Eigenschaft null
.
Implementierung
public function get matrix():Matrix
public function set matrix(value:Matrix):void
Auslöser
TypeError — Die Matrix ist leer, wenn gesetzt.
|
Verwandte API-Elemente
matrix3D | Eigenschaft |
matrix3D:Matrix3D
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5 |
Erlaubt den Zugriff auf das Matrix3D-Objekt eines dreidimensionalen Anzeigeobjekts. Das Matrix3D-Objekt stellt eine Transformationsmatrix dar, die die Position und Ausrichtung des Anzeigeobjekts bestimmt. Ein Matrix3D-Objekt kann auch perspektivische Projektionen ausführen.
Wenn die matrix
-Eigenschaft auf einen Wert (nicht null
) eingestellt ist, ist die matrix3D
-Eigenschaft null
. Und wenn die matrix3D
-Eigenschaft auf einen Wert (nicht null
) eingestellt ist, ist die matrix
-Eigenschaft null
.
Implementierung
public function get matrix3D():Matrix3D
public function set matrix3D(value:Matrix3D):void
Verwandte API-Elemente
perspectiveProjection | Eigenschaft |
perspectiveProjection:PerspectiveProjection
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5 |
Erlaubt den Zugriff auf das PerspectiveProjection-Objekt eines dreidimensionalen Anzeigeobjekts. Das PerspectiveProjection-Objekt kann verwendet werden, um die Perspektiventransformation der Bühne zu ändern oder um allen untergeordneten dreidimensionalen Objekten eines Anzeigeobjekts eine Perspektiventransformation zuzuweisen.
Basierend auf dem Sichtfeld und dem Seitenverhältnis (Abmessungen) der Bühne wird dem Stammobjekt ein PerspectiveProjection-Standardobjekt zugewiesen.
Implementierung
public function get perspectiveProjection():PerspectiveProjection
public function set perspectiveProjection(value:PerspectiveProjection):void
Verwandte API-Elemente
pixelBounds | Eigenschaft |
getRelativeMatrix3D | () | Methode |
public function getRelativeMatrix3D(relativeTo:DisplayObject):Matrix3D
Sprachversion: | ActionScript 3.0 |
Laufzeitversionen: | Flash Player 10, AIR 1.5 |
Gibt ein Matrix3D-Objekt zurück, das den Raum eines angegebenen Anzeigeobjekts relativ zu seinem derzeitigen Raum transformiert. Mit der getRelativeMatrix3D()
-Methode bewegen Sie ein dreidimensionales Anzeigeobjekt relativ zu einem anderen dreidimensionalen Anzeigeobjekt.
Parameter
relativeTo:DisplayObject — Das Anzeigeobjekt, auf das sich die Transformation bezieht. Um ein auf die Bühne bezogenes Matrix3D-Objekt zu erhalten, setzen Sie den Parameter auf das root - oder stage -Objekt. Um ein auf die Welt bezogenes Matrix3D-Objekt zu erhalten, stellen Sie den Parameter auf ein mit einer perspektivischen Transformation verändertes Anzeigeobjekt ein.
|
Matrix3D — Ein Matrix3D-Objekt, das den Raum des relativeTo -Anzeigeobjekts in den Raum des aktuellen Anzeigeobjekts transformiert.
|
Verwandte API-Elemente
- Der
TransformExample()
-Konstruktor erstellt ein neues Sprite-Objekt mit dem Namentarget
. - Der
TransformExample()
-Konstruktor ruft die Methodedraw()
auf, die ein Quadrat mit Farbverlaufsfüllung im Sprite zeichnet. - Der
TransformExample()
-Konstruktor fügt dem Sprite einen click-Ereignis-Listener hinzu, der von derclickHandler()
-Methode verarbeitet wird. - Mithilfe der
clickHandler()
-Methode wird ein neues Matrix-Objekt erstellt (skewMatrix
), durch das ein Neigungseffekt angewendet wird. Eine weitere Matrix (tempMatrix
) wird der aktuellen Transformationsmatrix des Sprites zugewiesen und dann mithilfe derconcat()
-Methode mitskewMatrix
kombiniert. Diese Matrix wird dertransform.matrix
-Eigenschaft des quadratischen Sprites zugewiesen. Jedes Mal, wenn der Benutzer auf das Quadrat klickt, wirdclickHandler()
aufgerufen, wodurch die Form des Quadrats geneigt wird. - Darüber hinaus erstellt die
clickHandler()
-Methode ein neues ColorTransform-Objekt. DieredOffset
-Eigenschaft des neuen ColorTransform-Objekts wird auf den um 25 erhöhten aktuellen Wert von „redOffset“ gesetzt. Entsprechend wird der Wert derblueOffset
-Eigenschaft um 25 verringert. Bei jedem Klicken ändern sich die Farben des Sprites.
package { import flash.display.Sprite; import flash.display.GradientType; import flash.geom.Matrix; import flash.geom.ColorTransform; import flash.events.MouseEvent; public class TransformExample extends Sprite { public function TransformExample() { var target:Sprite = new Sprite(); draw(target); addChild(target); target.useHandCursor = true; target.buttonMode = true; target.addEventListener(MouseEvent.CLICK, clickHandler) } public function draw(sprite:Sprite):void { var red:uint = 0xFF0000; var green:uint = 0x00FF00; var blue:uint = 0x0000FF; var size:Number = 100; sprite.graphics.beginGradientFill(GradientType.LINEAR, [red, blue, green], [1, 0.5, 1], [0, 200, 255]); sprite.graphics.drawRect(0, 0, 100, 100); } public function clickHandler(event:MouseEvent):void { var skewMatrix:Matrix = new Matrix(); skewMatrix.c = 0.25; var tempMatrix:Matrix = this.transform.matrix; tempMatrix.concat(skewMatrix); this.transform.matrix = tempMatrix; var rOffset:Number = this.transform.colorTransform.redOffset + 25; var bOffset:Number = this.transform.colorTransform.blueOffset - 25; this.transform.colorTransform = new ColorTransform(1, 1, 1, 1, rOffset, 0, bOffset, 0); } } }
Tue Jun 12 2018, 10:04 AM Z