패키지 | flash.geom |
클래스 | public final class Orientation3D |
상속 | Orientation3D Object |
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10, AIR 1.5 |
decompose
및 recompose
메서드는 이러한 열거 유형 중 하나를 사용하여 행렬의 회전 구성 요소를 식별합니다.
관련 API 요소
상수 | 정의 주체 | ||
---|---|---|---|
AXIS_ANGLE : String = "axisAngle" [정적]
축 각 방향에서는 축과 각의 조합을 사용하여 방향을 결정합니다. | Orientation3D | ||
EULER_ANGLES : String = "eulerAngles" [정적]
decompose() 및 recompose() 메서드의 기본 방향인 오일러 각은 각 축에 대한 서로 다른 세 개의 회전각을 사용하여 방향을 정의합니다. | Orientation3D | ||
QUATERNION : String = "quaternion" [정적]
쿼터니언 방향에는 복소수가 사용됩니다. | Orientation3D |
AXIS_ANGLE | 상수 |
public static const AXIS_ANGLE:String = "axisAngle"
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10, AIR 1.5 |
축 각 방향에서는 축과 각의 조합을 사용하여 방향을 결정합니다. 축의 예로는 3차원 구의 중심에서 표면으로 이어지는 직선 또는 벡터가 있습니다. 객체가 회전되는 중심 축은 3차원 공간에서 가능한 모든 방향을 나타내는 단위 벡터입니다. 각은 벡터 주위로 회전할 크기를 나타냅니다. 방향은 표시 객체가 향하는 위치를 결정하고, 롤 각은 위쪽을 가리키는 방향을 결정합니다. Vector3D 및 Matrix3D 객체를 사용하여 다양한 행렬 변형 및 중요한 3차원 프로그래밍 값을 결정할 수 있습니다. 이러한 값으로는 3차원 객체 사이의 단순 충돌을 감지하는 데 사용할 수 있는 두 객체의 교차 거리 등이 있습니다.
Matrix3D.appendRotation()
및 Matrix3D.prependRotation()
메서드에서는 축 각 방향을 사용합니다.
관련 API 요소
EULER_ANGLES | 상수 |
public static const EULER_ANGLES:String = "eulerAngles"
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10, AIR 1.5 |
decompose()
및 recompose()
메서드의 기본 방향인 오일러 각은 각 축에 대한 서로 다른 세 개의 회전각을 사용하여 방향을 정의합니다. 일반적으로 x축 중심 회전, y축 중심 회전, z축 중심 회전의 순서입니다.
오일러 각을 사용하면 x축 중심으로 회전할 때의 이상 현상이나 짐벌 락(gimbal lock) 등의 문제로 인해 애니메이션 오류가 나타날 수 있습니다. 예를 들어 오일러 각을 사용하면 각 축이 독립적으로 처리되므로 둘 이상의 축을 중심으로 회전할 때 짐벌 락이 발생할 수 있습니다. 여러 축이 정렬되어 예기치 않은 결과가 나타납니다.
표시 객체의 축 회전 속성은 오일러 각 회전을 수행합니다.
관련 API 요소
QUATERNION | 상수 |
public static const QUATERNION:String = "quaternion"
언어 버전: | ActionScript 3.0 |
런타임 버전: | Flash Player 10, AIR 1.5 |
쿼터니언 방향에는 복소수가 사용됩니다. 쿼터니언은 세 개의 축(x,y,z)과 회전각(w)을 사용하여 방향을 나타냅니다. 쿼터니언을 사용하면 방향을 가장 간결하고 효율적으로 나타낼 수 있습니다. 또한 매끄러운 회전이 가능하고 짐벌 락이 발생하지 않습니다. 둘 이상의 축을 중심으로 회전할 때 여러 축이 정렬되면 짐벌 락이 발생하여 예기치 않은 결과가 나타날 수 있습니다.
Matrix3D.interpolate()
메서드에서는 쿼터니언을 사용합니다.
관련 API 요소
Tue Jun 12 2018, 03:17 PM Z