쿼터니언 회전 예제

Uncategorized by nrhpadmin

두 회전의 축으로 정의된 복합 회전 축에 대한 Rodrigues 공식입니다. 그는 1840년에 이 공식을 파생시켰습니다(408페이지 참조). [7] 튜토리얼 3 – 행렬에서 행렬은 특정 축을 중심으로 점을 회전 할 수 있다는 것을 배웠습니다. 행렬은 정점을 변환하는 깔끔한 방법이지만 행렬을 처리하는 것은 어렵습니다. 두 권의 책을 나란히 놓는다. 그 중 하나를 z축 을 중심으로 시계 방향으로 90도 회전한 다음 x축 주위로 180도 뒤집습니다. 다른 책을 가지고, 먼저 x 축 주위에 180 ° 뒤집고, 나중에 z 주위에 90 ° 시계 방향으로. 두 책은 평행하게 끝나지 않습니다. 이는 일반적으로 두 개의 서로 다른 공간 축을 중심으로 두 개의 서로 다른 회전의 구성이 통근되지 않음을 보여줍니다.

이 튜토리얼은 OpenGL의 범위를 조금 벗어나지만 그럼에도 불구하고 매우 일반적인 문제를 해결합니다 : 회전을 나타내는 방법 ? 쿼터니온 곱셈은 비분변(교차 제품, 통근 방지 제품) 반면 스칼라-스칼라 및 스칼라 벡터 곱셈은 통근합니다. 이러한 규칙에서 바로 다음과 같습니다(세부 정보 참조): 회전을 나타내는 데 사용되는 경우 단위 쿼터니온은 3D 회전 그룹을 나타낼 때 회전 쿼터니온이라고도 합니다. 방향을 나타내는 데 사용되는 경우(참조 좌표계를 기준으로 회전) 방향 쿼터니언 또는 태도 쿼터니언이라고 합니다. 공간 회전에 대한 방정식은 단위 축에 대한 θ radians에 대해 요약 될 수있다 (X, Y, Z) {디스플레이 스타일 (X, Y, Z)} 쿼터니언으로 (C, X S , Y – S , Y – S , Z S) {표시 스타일 (C, X*S, Y*S, Z*S)} 여기서 C = cos (θ / 2) {디스플레이 스타일 C = cos (세타 /2)} 및 S = 죄 (θ / 2) {디스플레이 스타일 S = 죄 (세타 / 2)} . U → {디스플레이 스타일 {vec {u}}}는 단위 벡터(회전 축)가 되고 q = cos α 2 + u → 죄 α 2 {디스플레이 스타일 q=cos {frac {2}{\\vec {u}\frac {2}} 우리의 목표는 RotationAxis가 이름에서 알 수 있듯이 회전을 할 축임을 표시하는 것입니다. RB 및 RA 의 조성물의 쿼터니언 제형의 이점은 RC=RBRA 복합 회전의 회전 축 및 각도를 직접 수율산출한다는 것이다. 쿼터니언은 방향과 회전이 될 수 있습니다. A * B에서 A는 기본 방향이고 B는 적용한 회전입니다. B를 베이스로 사용하고 A를 회전으로 적용한 경우 다른 것을 얻을 수 있습니다. 단위 쿼터니언은 매우 간단한 방법으로 3 차원의 유클리드 회전 그룹을 나타냅니다. 먼저 회전 공간 자체를 시각화하여 회전과 쿼터니온 간의 대응을 이해할 수 있습니다.

이 형식은 Euler 각도보다 확실히 덜 직관적이지만 여전히 읽을 수 있습니다: xyz 구성 요소는 대략 회전 축과 일치하며 w는 회전 각도의 아코스입니다(2로 나눈 값).