| 패키지 | flash.geom |
| 클래스 | public class Matrix |
| 상속 | Matrix Object |
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
matrix 속성에 적용한 다음, 이 Transform 객체를 표시 객체의 transform 속성으로 적용함으로써 표시 객체에서 다양한 그래픽 변형 작업을 수행할 수 있습니다. 이러한 변형 기능으로는 평행 이동(x와 y 위치 변경), 회전, 크기 조절 및 기울이기 등이 있습니다.
이러한 종류의 변형을 총칭하여 어파인 변형(affine transformations)이라고 합니다. 어파인 변형에서는 변형 과정에서 선이 곧은 상태를 유지하므로 평행선이 그대로 평행을 이루게 됩니다.
표시 객체에 변형 행렬을 적용하려면 Transform 객체를 만들어 matrix 속성을 변형 행렬로 설정한 다음, 표시 객체의 transform 속성을 Transform 객체로 설정합니다. Matrix 객체는 다음을 비롯한 일부 메서드에서 매개 변수로 사용할 수 있습니다.
draw() 메서드beginBitmapFill() 메서드, beginGradientFill() 메서드 또는 lineGradientStyle() 메서드변형 행렬 객체는 다음 내용이 들어 있는 3 x 3 행렬입니다.

기존의 변형 행렬에서 u, v 및 w 속성은 추가적인 기능을 제공합니다. Matrix 클래스는 2차원 영역에서만 작동할 수 있으므로 항상 u와 v의 속성 값은 0.0, w의 속성 값은 1.0으로 가정합니다. 이 행렬의 유효 값은 다음과 같습니다.

Matrix 객체에서 나머지 여섯 가지 속성(a, b, c, d, tx 및 ty) 값을 가져오고 설정할 수 있습니다.
Matrix 클래스는 변환, 크기 조절, 회전 및 기울이기의 네 가지 주요 변형 종류를 지원합니다. 다음 테이블에서 설명하는 특수한 메서드를 사용하면 이 중 세 가지 변형을 설정할 수 있습니다.
| 변형 종류 | 메서드 | Matrix 값 | 표시 결과 | 설명 |
|---|---|---|---|---|
| 변환(위치 이동) | translate(tx, ty) | ![]() | ![]() | 이미지를 오른쪽으로 tx픽셀, 아래쪽으로 ty픽셀 이동합니다. |
| 크기 조절 | scale(sx, sy) | ![]() | ![]() | 각 픽셀의 x 축 위치에 sx, y 축 위치에 sy를 곱하여 이미지 크기를 조절합니다. |
| 회전 | rotate(q) | ![]() | ![]() | 라디안 단위로 측정된 각도 q만큼 이미지를 회전합니다. |
| 기울이기 또는 시어링(shearing) | 메서드가 없으므로 속성 b와 c를 설정해야 합니다. | ![]() | ![]() | 이미지를 x 축이나 y 축에 평행하게 점차 이동합니다. Matrix 객체의 b 속성은 y 축을 기준으로 한 경사각의 탄젠트 값을 나타내고, c 속성은 x 축을 기준으로 한 경사각의 탄젠트 값을 나타냅니다. |
각 변형 함수가 현재 행렬 속성을 변경하므로 여러 변형을 효과적으로 결합할 수 있습니다. 이렇게 하려면 표시 객체의 transform 속성을 사용하여 먼저 두 가지 이상의 변형 함수를 호출한 다음, 해당 표시 객체 대상에 행렬을 적용합니다.
Matrix 객체의 메서드를 호출하기 전에 new Matrix() 생성자를 사용하여 Matrix 객체를 만드십시오.
참고 사항
| 속성 | 다음에 의해 정의됨 | ||
|---|---|---|---|
| a : Number
Matrix 객체의 1행 2열의 값으로서, 이미지를 회전하거나 기울일 때 y축의 픽셀 위치에 영향을 줍니다.
| Matrix | ||
| b : Number
Matrix 객체의 1행 2열의 값으로서, 이미지를 회전하거나 기울일 때 y축의 픽셀 위치에 영향을 줍니다.
| Matrix | ||
| c : Number
Matrix 객체의 2행 1열의 값으로서, 이미지를 회전하거나 기울일 때 x축의 픽셀 위치에 영향을 줍니다.
| Matrix | ||
![]() | constructor : Object
지정된 객체 인스턴스의 클래스 객체 또는 생성자 함수에 대한 참조입니다.
| Object | |
| d : Number
이미지의 크기를 조절하거나 회전할 때 y축에 대한 픽셀의 위치 지정에 영향을 주는 Matrix 객체의 2행 2열의 값입니다.
| Matrix | ||
![]() | prototype : Object
[static]
클래스 또는 함수 객체의 프로토타입 객체에 대한 참조입니다.
| Object | |
| tx : Number
x축을 따라 각 점이 변환되는 거리입니다.
| Matrix | ||
| ty : Number
y축을 따라 각 점이 변환되는 거리입니다.
| Matrix | ||
| 메서드 | 다음에 의해 정의됨 | ||
|---|---|---|---|
|
지정된 매개 변수를 가진 새로운 Matrix 객체를 생성합니다.
| Matrix | ||
|
이 행렬의 복제본인 새 Matrix 객체와, 포함된 객체의 동일한 복사본을 함께 반환합니다.
| Matrix | ||
|
행렬을 현재 행렬과 연결하여 두 행렬의 기하학적 효과를 효율적으로 결합합니다.
| Matrix | ||
|
크기 조절, 회전 및 변환을 위한 매개 변수가 포함되어 있습니다.
| Matrix | ||
|
createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
Graphics 클래스의 beginGradientFill() 및 lineGradientStyle() 메서드에서 사용할 특정한 스타일의 행렬을 만듭니다.
| Matrix | ||
|
변형 전 좌표 영역의 점이 지정된 경우 변형 작업 후 해당 점의 좌표를 반환합니다.
| Matrix | ||
![]() |
지정된 속성이 객체에 정의되어 있는지 여부를 나타냅니다.
| Object | |
|
각 행렬 속성을 null 변환을 발생시키는 값으로 설정합니다.
| Matrix | ||
|
원행렬의 반대 변형을 수행합니다.
| Matrix | ||
![]() |
Object 클래스의 인스턴스가 매개 변수로 지정된 객체의 프로토타입 체인에 있는지 여부를 나타냅니다.
| Object | |
![]() |
지정된 속성이 존재하고 열거 가능한지 여부를 나타냅니다.
| Object | |
|
Matrix 객체에 회전 변형을 적용합니다.
| Matrix | ||
|
행렬에 크기 조절 변형을 적용합니다.
| Matrix | ||
![]() |
루프 작업에서 동적 속성을 사용할 수 있는지 여부를 설정합니다.
| Object | |
|
Matrix 객체의 속성 목록을 나타내는 텍스트 값을 반환합니다.
| Matrix | ||
|
Matrix 객체가 나타내는 기하학적 변형을 지정된 점에 적용한 결과를 반환합니다.
| Matrix | ||
|
dx 및 dy 매개 변수에 지정된 대로 x 및 y 축을 따라 행렬을 평행 이동합니다.
| Matrix | ||
![]() |
지정된 객체의 프리미티브 값을 반환합니다.
| Object | |
| a | 속성 |
public var a:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체의 1행 1열의 값으로서, 이미지 크기를 조절하거나 회전시킬 때 x 축의 픽셀 위치에 영향을 줍니다.
myMatrix를 만들고 해당 a 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.a); // 1
myMatrix.a = 2;
trace(myMatrix.a); // 2
| b | 속성 |
public var b:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체의 1행 2열의 값으로서, 이미지를 회전시키거나 기울일 때 y 축의 픽셀 위치에 영향을 줍니다.
myMatrix를 만들고 해당 b 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.b); // 0
var degrees:Number = 30;
var radians:Number = (degrees/180) * Math.PI;
myMatrix.b = Math.tan(radians);
trace(myMatrix.b); // 0.5773502691896257
| c | 속성 |
public var c:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체의 2행 1열의 값으로서, 이미지를 회전시키거나 기울일 때 x 축의 픽셀 위치에 영향을 줍니다.
myMatrix를 만들고 해당 c 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.c); // 0
var degrees:Number = 30;
var radians:Number = (degrees/180) * Math.PI;
myMatrix.c = Math.tan(radians);
trace(myMatrix.c); // 0.5773502691896257
| d | 속성 |
public var d:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체의 2행 2열의 값으로서, 이미지 크기를 조절하거나 회전시킬 때 y 축의 픽셀 위치에 영향을 줍니다.
myMatrix를 만들고 해당 d 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.d); // 1
myMatrix.d = 2;
trace(myMatrix.d); // 2
| tx | 속성 |
public var tx:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
x 축을 따라 각 점이 평행 이동할 거리입니다. Matrix 객체의 1행 3열의 값을 나타냅니다.
myMatrix를 만들고 해당 tx 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.tx); // 0
myMatrix.tx = 50; // 50
trace(myMatrix.tx);
| ty | 속성 |
public var ty:Number
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
y 축을 따라 각 점이 평행 이동할 거리입니다. Matrix 객체의 2행과 3열의 값을 나타냅니다.
myMatrix를 만들고 해당 ty 값을 설정합니다.
import flash.geom.Matrix;
var myMatrix:Matrix = new Matrix();
trace(myMatrix.ty); // 0
myMatrix.ty = 50;
trace(myMatrix.ty); // 50
| Matrix | () | 생성자 |
public function Matrix(a:Number = 1, b:Number = 0, c:Number = 0, d:Number = 1, tx:Number = 0, ty:Number = 0)
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
지정된 매개 변수를 가진 새로운 Matrix 객체를 생성합니다. 행렬 표기법에서 다음과 같이 속성이 구성됩니다.

new Matrix() 생성자에 매개 변수를 제공하지 않으면 다음 값을 갖는 단위 행렬이 만들어집니다.
a = 1 | b = 0 |
c = 0 | d = 1 |
tx = 0 | ty = 0 |
행렬 표기법에서 단위 행렬은 다음과 같이 나타납니다.

a:Number (default = 1) — 새 Matrix 객체의 1행 1열의 값입니다.
|
|
b:Number (default = 0) — 새 Matrix 객체의 1행 2열의 값입니다.
|
|
c:Number (default = 0) — 새 Matrix 객체의 2행 1열의 값입니다.
|
|
d:Number (default = 1) — 새 Matrix 객체의 2행 2열의 값입니다.
|
|
tx:Number (default = 0) — 새 Matrix 객체의 1행 3열의 값입니다.
|
|
ty:Number (default = 0) — 새 Matrix 객체의 2행 3열의 값입니다.
|
Matrix() 생성자에 매개 변수를 보내지 않고 matrix_1을 만들고, 이 생성자에 매개 변수를 보내어 matrix_2를 만듭니다. 매개 변수 없이 만들어진 matrix_1은 a=1, b=0, c=0, d=1, tx=0, ty=0 값을 갖는 단위 행렬입니다.
import flash.geom.Matrix;
var matrix_1:Matrix = new Matrix();
trace(matrix_1); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var matrix_2:Matrix = new Matrix(1, 2, 3, 4, 5, 6);
trace(matrix_2); // (a=1, b=2, c=3, d=4, tx=5, ty=6)
| clone | () | 메서드 |
public function clone():Matrix
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
이 행렬의 복제본인 새 Matrix 객체와, 포함된 객체의 동일한 복사본을 함께 반환합니다.
반환값Matrix — Matrix 객체입니다.
|
| concat | () | 메서드 |
public function concat(m:Matrix):void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
행렬을 현재 행렬과 연결하여 두 행렬의 기하학적 효과를 효율적으로 결합합니다. 수학적 용어에서 두 행렬을 연결한다는 것은 행렬 곱셈을 사용하여 두 행렬을 결합하는 것과 같습니다.
예를 들어, 행렬 m1이 인수 4만큼 객체의 크기를 조절하고 행렬 m2가 1.5707963267949 라디안(Math.PI/2)만큼 객체를 회전하는 경우, m1.concat(m2)는 m1을 인수 4만큼 객체의 크기를 조절하고 Math.PI/2 라디안만큼 객체를 회전하는 행렬로 변환합니다.
이 메서드는 소스 행렬을 연결된 행렬로 바꿉니다. 두 개의 소스 행렬 중 하나를 바꾸지 않고 두 행렬을 연결하려면 클래스 예제 단원에서 보여준 것처럼, 먼저 clone() 메서드를 사용하여 소스 행렬을 복사하십시오.
매개 변수
m:Matrix — 소스 행렬에 연결할 행렬입니다.
|
| createBox | () | 메서드 |
public function createBox(scaleX:Number, scaleY:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
크기 조절, 회전 및 변환을 위한 매개 변수가 포함되어 있습니다. 이 메서드를 행렬에 적용하면 해당 매개 변수에 따라 행렬 값이 설정됩니다.
createBox() 메서드를 사용하면 identity(), rotate(), scale() 및 translate() 메서드를 연속적으로 적용한 것과 동일한 행렬을 얻을 수 있습니다. 예를 들어, mat1.createBox(2,2,Math.PI/4, 100, 100)는 다음과 동일한 효과를 냅니다.
import flash.geom.Matrix;
var mat1:Matrix = new Matrix();
mat1.identity();
mat1.rotate(Math.PI/4);
mat1.scale(2,2);
mat1.translate(10,20);
매개 변수
scaleX:Number — 크기를 가로로 조절할 비율입니다.
|
|
scaleY:Number — 크기를 세로로 조절할 비율입니다.
|
|
rotation:Number (default = 0) — 회전할 각도(라디안 단위)입니다.
|
|
tx:Number (default = 0) — x 축을 따라 오른쪽으로 평행 이동할 픽셀 수입니다.
|
|
ty:Number (default = 0) — y 축을 따라 아래쪽으로 평행 이동할 픽셀 수입니다.
|
참고 사항
createBox() 메서드를 호출하여 myMatrix의 x 비율, y 비율, 회전, x 위치 및 y 위치를 설정합니다.
package
{
import flash.display.Shape;
import flash.display.Sprite;
import flash.geom.Matrix;
import flash.geom.Transform;
public class Matrix_createBox extends Sprite
{
public function Matrix_createBox()
{
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.createBox(1, 2, Math.PI/4, 50, 100);
trace(myMatrix.toString());
// (a=0.7071067811865476, b=1.414213562373095, c=-0.7071067811865475,
// d=1.4142135623730951, tx=100, ty=200)
var rectangleShape:Shape = createRectangle(20, 80, 0xFF0000);
addChild(rectangleShape);
var rectangleTrans:Transform = new Transform(rectangleShape);
rectangleTrans.matrix = myMatrix;
}
public function createRectangle(w:Number, h:Number, color:Number):Shape
{
var rect:Shape = new Shape();
rect.graphics.beginFill(color);
rect.graphics.drawRect(0, 0, w, h);
addChild(rect);
return rect;
}
}
}| createGradientBox | () | 메서드 |
public function createGradientBox(width:Number, height:Number, rotation:Number = 0, tx:Number = 0, ty:Number = 0):void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Graphics 클래스의 beginGradientFill() 및 lineGradientStyle() 메서드에 사용할 특정한 스타일의 행렬을 만듭니다. 너비와 높이는 scaleX / scaleY 쌍으로 크기가 조절되고 tx/ty 값은 너비와 높이의 절반만큼 오프셋됩니다.
예를 들어, 다음 특성을 갖는 그래디언트를 생각해 보십시오.
GradientType.LINEAR[0, 255]로 설정된 녹색 및 파랑의 두 색상SpreadMethod.PADInterpolationMethod.LINEAR_RGB다음 그림은 매개 변수 설정이 서로 다른 createGradientBox() 메서드를 사용하여 행렬이 정의된 경우의 그래디언트를 보여 줍니다.
createGradientBox() 설정 | 결과 그래디언트 |
|---|---|
width = 25; height = 25; rotation = 0; tx = 0; ty = 0; | ![]() |
width = 25; height = 25; rotation = 0; tx = 25; ty = 0; | ![]() |
width = 50; height = 50; rotation = 0; tx = 0; ty = 0; | ![]() |
width = 50; height = 50; rotation = Math.PI / 4; // 45° tx = 0; ty = 0; | ![]() |
매개 변수
width:Number — 그래디언트 상자의 너비입니다.
|
|
height:Number — 그래디언트 상자의 높이입니다.
|
|
rotation:Number (default = 0) — 회전할 각도(라디안 단위)입니다.
|
|
tx:Number (default = 0) — x 축을 따라 오른쪽으로 평행 이동할 픽셀 단위 거리입니다. 이 값은 width 매개 변수의 절반만큼 오프셋됩니다.
|
|
ty:Number (default = 0) — y 축을 따라 아래쪽으로 평행 이동할 픽셀 단위 거리입니다. 이 값은 height 매개 변수의 절반만큼 오프셋됩니다.
|
참고 사항
createBox() 메서드를 호출하여 myMatrix의 x 비율, y 비율, 회전, x 위치 및 y 위치를 설정합니다.
package
{
import flash.display.GradientType;
import flash.display.Sprite;
import flash.geom.Matrix;
public class Matrix_createGradientBox extends Sprite
{
public function Matrix_createGradientBox()
{
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.createGradientBox(200, 200, 0, 50, 50);
trace(myMatrix.toString()); // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)
var colors:Array = [0xFF0000, 0x0000FF];
var alphas:Array = [100, 100];
var ratios:Array = [0, 0xFF];
this.graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, myMatrix);
this.graphics.drawRect(0, 0, 300, 200);
}
}
}| deltaTransformPoint | () | 메서드 |
public function deltaTransformPoint(point:Point):Point
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
변형 전 좌표 영역의 점이 지정된 경우 변형 작업 후 해당 점의 좌표를 반환합니다. transformPoint() 메서드를 사용하여 적용된 표준 변형과 달리 deltaTransformPoint() 메서드를 사용한 변형에서는 매개 변수 tx와 ty를 고려하지 않습니다.
매개 변수
point:Point — 행렬 변형의 결과를 얻을 대상이 되는 점입니다.
|
Point — 행렬 변형을 적용한 결과로 얻어진 점입니다.
|
| identity | () | 메서드 |
public function identity():void
| Player 버전 : | Flash Player 9 |
각 행렬 속성을 null 변환을 발생시키는 값으로 설정합니다. 단위 행렬을 적용하여 변형된 객체는 원래의 객체와 동일해집니다.
identity() 메서드를 호출하면 결과 행렬의 속성은 a=1, b=0, c=0, d=1, tx=0, ty=0이 됩니다.
행렬 표기법에서 단위 행렬은 다음과 같이 나타납니다.

| invert | () | 메서드 |
public function invert():void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
원행렬의 반대 변형을 수행합니다. 역행렬을 객체에 적용하여 원행렬을 적용할 때 수행한 변형을 실행 취소할 수 있습니다.
doubleScaleMatrix의 invert() 메서드를 호출하여 halfScaleMatrix를 만듭니다. 그런 다음 이 두 객체가 서로 간의 변형 효과를 없애는 역행렬임을 noScaleMatrix와 동일한 originalAndInverseMatrix를 만듦으로써 보여 줍니다.
package
{
import flash.display.Shape;
import flash.display.Sprite;
import flash.geom.Matrix;
import flash.geom.Transform;
public class Matrix_invert extends Sprite
{
public function Matrix_invert()
{
var rect0:Shape = createRectangle(20, 80, 0xFF0000);
var rect1:Shape = createRectangle(20, 80, 0x00FF00);
var rect2:Shape = createRectangle(20, 80, 0x0000FF);
var rect3:Shape = createRectangle(20, 80, 0x000000);
var trans0:Transform = new Transform(rect0);
var trans1:Transform = new Transform(rect1);
var trans2:Transform = new Transform(rect2);
var trans3:Transform = new Transform(rect3);
var doubleScaleMatrix:Matrix = new Matrix(2, 0, 0, 2, 0, 0);
trans0.matrix = doubleScaleMatrix;
trace(doubleScaleMatrix.toString()); // (a=2, b=0, c=0, d=2, tx=0, ty=0)
var noScaleMatrix:Matrix = new Matrix(1, 0, 0, 1, 0, 0);
trans1.matrix = noScaleMatrix;
rect1.x = 50;
trace(noScaleMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
var halfScaleMatrix:Matrix = doubleScaleMatrix.clone();
halfScaleMatrix.invert();
trans2.matrix = halfScaleMatrix;
rect2.x = 100;
trace(halfScaleMatrix.toString()); // (a=0.5, b=0, c=0, d=0.5, tx=0, ty=0)
var originalAndInverseMatrix:Matrix = doubleScaleMatrix.clone();
originalAndInverseMatrix.concat(halfScaleMatrix);
trans3.matrix = originalAndInverseMatrix;
rect3.x = 150;
trace(originalAndInverseMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
}
public function createRectangle(w:Number, h:Number, color:Number):Shape
{
var rect:Shape = new Shape();
rect.graphics.beginFill(color);
rect.graphics.drawRect(0, 0, w, h);
addChild(rect);
return rect;
}
}
}| rotate | () | 메서드 |
public function rotate(angle:Number):void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체에 회전 변형을 적용합니다.
rotate() 메서드는 Matrix 객체의 a, b, c 및 d 속성을 변경합니다. 행렬 표기법에서 이것은 현재의 행렬을 다음에 연결하는 것과 같습니다.

매개 변수
angle:Number — 라디안 단위의 회전 각도입니다.
|
참고 사항
| scale | () | 메서드 |
public function scale(sx:Number, sy:Number):void
| Player 버전 : | Flash Player 9 |
행렬에 크기 조절 변형을 적용합니다. x 축에는 sx가 곱해지고 y 축에는 sy가 곱해집니다.
scale() 메서드는 Matrix 객체의 a와 d 속성을 변경합니다. 행렬 표기법에서 이것은 현재의 행렬을 다음 행렬에 연결하는 것과 같습니다.

매개 변수
sx:Number — x 축을 따라 객체의 크기를 조절하는 데 사용되는 승수입니다.
|
|
sy:Number — y 축을 따라 객체의 크기를 조절하는 데 사용되는 승수입니다.
|
참고 사항
| toString | () | 메서드 |
public function toString():String
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
Matrix 객체의 속성 목록을 나타내는 텍스트 값을 반환합니다.
반환값String — Matrix 객체의 속성 값인 a, b, c, d, tx 및 ty가 포함된 문자열입니다.
|
| transformPoint | () | 메서드 |
public function transformPoint(point:Point):Point
| Player 버전 : | Flash Player 9 |
Matrix 객체가 나타내는 기하학적 변형을 지정된 점에 적용한 결과를 반환합니다.
매개 변수
point:Point — 행렬 변형의 결과를 얻을 대상이 되는 점입니다.
|
Point — 행렬 변형을 적용한 결과로 얻어진 점입니다.
|
| translate | () | 메서드 |
public function translate(dx:Number, dy:Number):void
| 언어 버전 : | ActionScript 3.0 |
| Player 버전 : | Flash Player 9 |
dx 및 dy 매개 변수에 지정된 대로 x 및 y 축을 따라 행렬을 평행 이동합니다.
매개 변수
dx:Number — x 축을 따라 오른쪽으로 이동할 크기(픽셀 단위)입니다.
|
|
dy:Number — y 축을 따라 아래쪽으로 이동할 크기(픽셀 단위)입니다.
|
참고 사항
MatrixExample 클래스를 사용하여 그래디언트 채우기가 적용된 큰 사각형을 만드는 방법을 보여 줍니다. 이는 다음 단계로 이루어집니다.
myMatrix를 만들고, trace() 메서드를 사용하여 myMatrix 객체에 대한 기본 속성 값을 출력합니다.width 및 height 매개 변수를 200픽셀로 설정하고, 회전 없이 x 축 및 y 축을 따라 평행 이동할 거리를 50 픽셀로 설정하여 createGradientBox()를 호출합니다.createGradientBox()를 호출한 다음에는 myMatrix 객체를 다시 인쇄하여 변경 사항을 보여 줍니다.colors: 그래디언트 색상을 단색 빨강과 단색 파랑 사이의 색상으로 설정합니다.alphas: 불투명도를 단색으로 설정합니다.ratios: 빨강 및 파랑에 동일하게 색상 배분을 설정합니다.beginGradientFill()(myMatrix 객체에서 작동)을 호출한 다음 lineTo() 메서드를 호출하여 상자에 그래디언트 채우기가 적용되도록 합니다.
package {
import flash.geom.Matrix;
import flash.display.Sprite;
import flash.display.GradientType;
public class MatrixExample extends Sprite {
public function MatrixExample() {
var myMatrix:Matrix = new Matrix();
trace(myMatrix.toString()); // (a=1, b=0, c=0, d=1, tx=0, ty=0)
myMatrix.createGradientBox(200, 200, 0, 50, 50);
trace(myMatrix.toString()); // (a=0.1220703125, b=0, c=0, d=0.1220703125, tx=150, ty=150)
var colors:Array = [0xFF0000, 0x0000FF];
var alphas:Array = [100, 100];
var ratios:Array = [0, 0xFF];
graphics.beginGradientFill(GradientType.LINEAR, colors, alphas, ratios, myMatrix);
graphics.lineTo(0, 300);
graphics.lineTo(300, 300);
graphics.lineTo(300, 0);
graphics.lineTo(0, 0);
}
}
}
이 페이지에 의견 추가되면 전자 메일 알림 받기 | 의견 보고서
현재 페이지: http://livedocs.adobe.com/flash/9.0_kr/ActionScriptLangRefV3/flash/geom/Matrix.html