본문으로 건너뛰기

공통 타입

모든 JSON 페이로드는 WebSocket 및 HTTP 인터페이스 전반에서 이 타입들을 일관되게 사용합니다.

vec3​

3차원 벡터입니다. 위치(미터), 속도(m/s), 힘(N), 스케일 계수에 사용됩니다.

{ "x": 0.0, "y": 0.0, "z": 0.0 }

quaternion​

회전을 나타내는 단위 쿼터니언입니다. 서비스 내부 표현에서는 w가 가장 먼저 오지만, JSON에서는 네 개의 성분이 모두 이름이 붙은 키로 전달되므로 순서는 상관없습니다.

{ "w": 1.0, "x": 0.0, "y": 0.0, "z": 0.0 }

항등 쿼터니언(w=1, x=y=z=0)은 “회전 없음”을 의미합니다.

angles3​

관절 각도는 라디안이 아닌 도(degree) 단위입니다. Inverse3의 세 관절에 대한 각위치 및 각속도에 사용됩니다.

{ "a0": 0.0, "a1": 0.0, "a2": 0.0 }

transform​

위치, 회전, 스케일을 결합한 것입니다. mount 변환, 워크스페이스 변환, SDF 효과 배치에 사용됩니다.

{
"position": { "x": 0.0, "y": 0.0, "z": 0.0 },
"rotation": { "w": 1.0, "x": 0.0, "y": 0.0, "z": 0.0 },
"scale": { "x": 1.0, "y": 1.0, "z": 1.0 }
}

항등 변환(위에 표시됨)은 모든 값을 변경하지 않습니다: 위치 0, 회전 없음, 단위 스케일.

노트
mount 명령 형태와 스냅샷 형태 비교

configure.mount를 통해 마운트를 전송할 때, 변환 값은 "transform" 키로 감싸집니다: { "mount": { "transform": { … } } }. 디바이스 스냅샷에서 마운트를 읽을 때는 평면 구조로 나타납니다: { "mount": { "position": …, "rotation": …, "scale": … } }. 이러한 비대칭은 의도된 설계입니다. 마운트 및 워크스페이스를 참고하십시오.