| パッケージ | flash.geom |
| クラス | public class Transform |
| 継承 | Transform Object |
| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | AIR 1.0 Flash Player 9 |
concatenatedColorTransform プロパティと concatenatedMatrix プロパティを使用して、これらの結合された変換にアクセスできます。
カラー変換を適用するには、ColorTransform オブジェクトを作成し、オブジェクトのメソッドとプロパティを使用してカラー調整を設定した後、colorTransformation プロパティ(表示オブジェクトの transform プロパティの)を新しい ColorTransformation オブジェクトに割り当てます。
2 次元変換を適用するには、Matrix オブジェクトを作成し、マトリックスの 2 次元変換を設定した後、表示オブジェクトの transform.matrix プロパティを新しい Matrix オブジェクトに割り当てます。
3 次元変換の適用は、3 次元表示オブジェクトで開始します。3 次元表示オブジェクトには、0 以外の z プロパティ値が設定されます。Matrix3D オブジェクトを作成する必要はありません。すべての 3 次元オブジェクトについて、z 値を表示オブジェクトに割り当てたときに Matrix3D オブジェクトが自動的に作成されます。表示オブジェクトの transform プロパティを使用して、表示オブジェクトの Matrix3D オブジェクトにアクセスできます。Matrix3D クラスのメソッドを使用して、既存の変換設定に対する追加または変更を実施できます。カスタム Matrix3D オブジェクトを作成し、カスタム Matrix3D オブジェクトの変換エレメントを設定した後、transform.matrix プロパティを使用して、新しい Matrix3D オブジェクトを表示オブジェクトに割り当てることもできます。
ステージまたはルートオブジェクトの遠近法に基づく投影を変更するには、ルート表示オブジェクトの transform.matrix プロパティを使用して、PerspectiveProjection オブジェクトへのアクセスを取得します。 または、表示オブジェクトの親の遠近法に基づく投影プロパティを設定することで、別の遠近法に基づく投影プロパティを表示オブジェクトに適用します。子表示オブジェクトは、新しいプロパティを継承します。具体的には、PerspectiveProjection オブジェクトを作成してプロパティを設定した後、PerspectiveProjection オブジェクトを perspectiveProjection プロパティ(親表示オブジェクトの transform プロパティの)に割り当てます。次に、指定された投影変換をすべての表示オブジェクトの 3 次元の子に適用します。
PerspectiveProjection オブジェクトと Matrix3D オブジェクトはどちらも遠近法に基づく変形を実行するため、両方を同時に表示オブジェクトに割り当てないでください。焦点の長さと投影の中心を変更するには、PerspectiveProjection オブジェクトを使用します。遠近法に基づく変換をより正確に制御するには、遠近法に基づく投影の Matrix3D オブジェクトを作成します。
関連項目
| プロパティ | 定義元 | ||
|---|---|---|---|
| colorTransform : ColorTransform 表示オブジェクトのカラーを全体的に調整する値を格納している ColorTransform オブジェクトです。 | Transform | ||
| concatenatedColorTransform : ColorTransform [読み取り専用] この表示オブジェクトおよびルートレベルまでのすべての親オブジェクトに適用される、結合されたカラー変換を表す ColorTransform オブジェクトです。 | Transform | ||
| concatenatedMatrix : Matrix [読み取り専用] この表示オブジェクトおよびルートレベルまでのそのすべての親オブジェクトの結合された変換行列を表す Matrix オブジェクトです。 | Transform | ||
![]() | constructor : Object 指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクタ関数への参照です。 | Object | |
| matrix : Matrix 表示オブジェクトの拡大 / 縮小、回転、および変換を変更する値を格納している Matrix オブジェクトです。 | Transform | ||
| matrix3D : Matrix3D 3 次元表示オブジェクトの Matrix3D オブジェクトへのアクセスを提供します。 | Transform | ||
| perspectiveProjection : PerspectiveProjection 3 次元表示オブジェクトの PerspectiveProjection オブジェクトへのアクセスを提供します。 | Transform | ||
| pixelBounds : Rectangle [読み取り専用] ステージ上の表示オブジェクトの境界を示す矩形を定義する Rectangle オブジェクトです。 | Transform | ||
![]() | prototype : Object [静的] クラスまたは関数オブジェクトのプロトタイプオブジェクトへの参照です。 | Object | |
| メソッド | 定義元 | ||
|---|---|---|---|
Matrix3D オブジェクトを返します。Matrix3D オブジェクトは、現在の表示オブジェクトの空間を基準にして、指定された表示オブジェクトの空間を変換します。 | Transform | ||
![]() | オブジェクトに指定されたプロパティが定義されているかどうかを示します。 | Object | |
![]() | Object クラスのインスタンスが、パラメータとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。 | Object | |
![]() | 指定されたプロパティが存在し、列挙できるかどうかを示します。 | Object | |
![]() | ループ処理に対するダイナミックプロパティの可用性を設定します。 | Object | |
![]() | 指定されたオブジェクトのストリング表現を返します。 | Object | |
![]() | 指定されたオブジェクトのプリミティブな値を返します。 | Object | |
| colorTransform | プロパティ |
colorTransform:ColorTransform [読み書き可能] | ランタイムバージョン: | AIR 1.0 Flash Player 9 |
表示オブジェクトのカラーを全体的に調整する値を格納している ColorTransform オブジェクトです。
public function get colorTransform():ColorTransform public function set colorTransform(value:ColorTransform):voidTypeError — ColorTransform は、設定時に null に設定されます。 |
関連項目
| concatenatedColorTransform | プロパティ |
concatenatedColorTransform:ColorTransform [読み取り専用] | ランタイムバージョン: | AIR 1.0 Flash Player 9 |
この表示オブジェクトおよびルートレベルまでのすべての親オブジェクトに適用される、結合されたカラー変換を表す ColorTransform オブジェクトです。異なるレベルで異なるカラー変換を適用した場合、すべての変換が連結されて、このプロパティ用の 1 つの ColorTransform オブジェクトになります。
public function get concatenatedColorTransform():ColorTransform関連項目
| concatenatedMatrix | プロパティ |
concatenatedMatrix:Matrix [読み取り専用] | ランタイムバージョン: | AIR 1.0 Flash Player 9 |
この表示オブジェクトおよびルートレベルまでのそのすべての親オブジェクトの結合された変換行列を表す Matrix オブジェクトです。異なるレベルで異なる変換マトリックスを適用した場合、すべてのマトリックスが連結されて、このプロパティ用の 1 つのマトリックスになります。 また、ブラウザで実行されるサイズ変更可能な SWF コンテンツの場合、このプロパティでは、ウィンドウのサイズ変更に伴って生じるステージ座標とウィンドウ座標との差異が考慮されます。このため、このプロパティは、ローカル座標をウィンドウ座標に変換しますが、そのウィンドウ座標はステージの座標空間とは異なる場合があります。
public function get concatenatedMatrix():Matrix| matrix | プロパティ |
matrix:Matrix [読み書き可能] | ランタイムバージョン: | AIR 1.0 Flash Player 9 |
表示オブジェクトの拡大 / 縮小、回転、および変換を変更する値を格納している Matrix オブジェクトです。
matrix プロパティに値が設定されている(null ではない)場合、matrix3D プロパティは null です。一方、matrix3D プロパティに値が設定されている(null ではない)場合、matrix プロパティは null です。
public function get matrix():Matrix public function set matrix(value:Matrix):voidTypeError — 行列は、設定時に null に設定されます。 |
関連項目
| matrix3D | プロパティ |
matrix3D:Matrix3D [読み書き可能] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
3 次元表示オブジェクトの Matrix3D オブジェクトへのアクセスを提供します。Matrix3D オブジェクトは、表示オブジェクトの位置と方向を決定する変換マトリックスを表します。Matrix3D オブジェクトは、遠近法に基づく投影を実行することもできます。
matrix プロパティに値が設定されている(null ではない)場合、matrix3D プロパティは null です。一方、matrix3D プロパティに値が設定されている(null ではない)場合、matrix プロパティは null です。
public function get matrix3D():Matrix3D public function set matrix3D(value:Matrix3D):void関連項目
| perspectiveProjection | プロパティ |
perspectiveProjection:PerspectiveProjection [読み書き可能] | 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
3 次元表示オブジェクトの PerspectiveProjection オブジェクトへのアクセスを提供します。PerspectiveProjection オブジェクトを使用して、ステージの遠近法に基づく変形を変更したり、遠近法に基づく変形を表示オブジェクトの 3 次元の子すべてに割り当てることができます。
視点とステージの縦横比(サイズ)に基づいて、デフォルトの PerspectiveProjection オブジェクトがルートオブジェクトに割り当てられます。
public function get perspectiveProjection():PerspectiveProjection public function set perspectiveProjection(value:PerspectiveProjection):void関連項目
| pixelBounds | プロパティ |
pixelBounds:Rectangle [読み取り専用] | ランタイムバージョン: | AIR 1.0 Flash Player 9 |
ステージ上の表示オブジェクトの境界を示す矩形を定義する Rectangle オブジェクトです。
public function get pixelBounds():Rectangle| getRelativeMatrix3D | () | メソッド |
public function getRelativeMatrix3D(relativeTo:DisplayObject):Matrix3D| 言語バージョン: | ActionScript 3.0 |
| ランタイムバージョン: | Flash Player 10, AIR 1.5 |
Matrix3D オブジェクトを返します。Matrix3D オブジェクトは、現在の表示オブジェクトの空間を基準にして、指定された表示オブジェクトの空間を変換します。getRelativeMatrix3D() メソッドを使用すると、ある 3 次元表示オブジェクトを基準にして別の 3 次元表示オブジェクトを移動できます。
パラメータ
relativeTo:DisplayObject —
変換の基準になる表示オブジェクトです。ステージを基準にした Matrix3D オブジェクトを取得するには、パラメータを root オブジェクトまたは stage オブジェクトに設定します。表示オブジェクトのワールドを基準とするマトリックスを取得するには、パラメータを遠近法に基づく変形が適用された表示オブジェクトに設定します。
|
Matrix3D —
空間を relativeTo 表示オブジェクトから現在の表示オブジェクト空間に変換するために使用できる Matrix3D オブジェクトです。
|
関連項目
TransformExample() コンストラクタが新しい Sprite オブジェクト target を作成します。
TransformExample() コンストラクタは draw() メソッドを呼び出します。このメソッドは、グラデーションの四角形をスプライトに描画します。
TransformExample() コンストラクタはスプライトに click イベントリスナーを追加します。これは clickHandler() メソッドによって処理されます。
clickHandler() メソッドは、新しい Matrix オブジェクト skewMatrix を作成し、傾斜効果を適用します。 もう 1 つのマトリックス tempMatrix は、スプライトの現在の変換マトリックスに割り当てられ、skewMatrix と concat() メソッドによって結合されます。 この行列は正方形のスプライトの transform.matrix プロパティに割り当てられます。ユーザーが正方形をクリックするたびに clickHandler() を呼び出して、正方形のシェイプを傾斜させて変更します。
clickHandler() メソッドは、新しい ColorTransform オブジェクトを作成します。 新しい ColorTransform オブジェクトの redOffset プロパティは redOffset の現在の値に設定され、25 ずつ増加します。同様に、blueOffset プロパティは 25 ずつ減少します。クリックするたびに、スプライトのカラーが変化します。
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);
}
}
}