id, title, category, status, canonical_id, aliases, duplicate_of, source_trust_level, confidence_score, verification_status, tags, raw_sources, last_reinforced, github_commit, tech_stack
id
title
category
status
canonical_id
aliases
duplicate_of
source_trust_level
confidence_score
verification_status
tags
raw_sources
last_reinforced
github_commit
tech_stack
wiki-2026-0508-gimbals-and-orientation
Gimbals and Orientation
10_Wiki/Topics
verified
self
Gimbal Lock
3D Orientation
Rotation Representation
none
A
0.92
applied
graphics
math
rotation
quaternion
robotics
2026-05-10
pending
language
framework
Python
NumPy/SciPy
Gimbals and Orientation
매 한 줄
"매 3D rotation은 representation 의 선택이 다 — Euler 직관, quaternion 안전, matrix 합성 빠르" . Gimbal lock 의 1958 Apollo IMU에서 발견된 singularity 매 모든 3-axis Euler systems에서 발생, 매 quaternion / rotation matrix 의 modern solution. 매 robotics, graphics, aerospace, VR 의 fundamental.
매 핵심
매 representations
Euler angles (roll, pitch, yaw): 3 floats, intuitive, but gimbal lock at ±90° pitch .
Rotation matrix (3× 3): 9 floats, no singularity, composable via multiplication, but redundant (only 3 DOF).
Quaternion (w, x, y, z): 4 floats, no gimbal lock, smooth SLERP interpolation, double cover (q and -q same rotation).
Axis-angle (Rodrigues): 3 floats encoding axis × angle, compact.
매 gimbal lock 매커니즘
매 3 nested rotations (e.g. ZYX) 매 second rotation이 ±90° 면 first/third axis가 align — DOF loss from 3 to 2.
매 Apollo 11 LM 의 famous near-miss: Aldrin manually steered to avoid IMU lock.
매 응용
Robotics IK / joint orientation.
Game character / camera control.
VR/AR head tracking (IMU sensor fusion).
Drone / aerospace attitude control.
Skeletal animation blending.
💻 패턴
Quaternion from Euler (avoid gimbal lock)
SLERP (smooth quaternion interpolation)
Rotation matrix composition
Axis-angle (Rodrigues' formula)
IMU sensor fusion (complementary filter)
Detect gimbal lock
Quaternion → Rotation matrix
매 결정 기준
상황
Approach
User-facing UI sliders
Euler (intuitive)
3D engine internal
Quaternion
Skeletal animation blending
Quaternion + SLERP
Physics / forces composition
Rotation matrix
IMU streaming
Quaternion + complementary/Kalman
Compact storage
Axis-angle or compressed quat
기본값 : Quaternion internally, Euler at user boundaries.
🔗 Graph
🤖 LLM 활용
언제 : orientation representation 의 conversion code 생성, gimbal lock debugging hints, sensor fusion math derivation.
언제 X : real-time IMU loop (latency critical — use compiled code), safety-critical aerospace code (require formal verification).
❌ 안티패턴
Storing rotation as Euler : gimbal lock + interpolation discontinuity. Store as quaternion.
Linear interpolation of quaternions : NLERP works로컬 but SLERP for accuracy. NLERP for speed in animation.
Forgetting double cover : q and -q same rotation; SLERP needs sign check.
Gradient-based optimization on Euler : discontinuous near singularities — use quaternion or matrix tangent space.
Mixing conventions : (w,x,y,z) vs (x,y,z,w), intrinsic vs extrinsic Euler — document explicitly.
🧪 검증 / 중복
Verified (Shoemake 1985 quaternion paper, NASA Apollo IMU records, scipy.spatial.transform docs).
신뢰도 A.
🕓 Changelog
날짜
변경
2026-05-08
Phase 1
2026-05-10
Manual cleanup — full content with quaternion/Euler/matrix patterns + IMU fusion