2016-09-15 2 views
-1

SCNNode의 convertTransform을 Eigen으로 변환하려고하지만 막후에서 무슨 일이 일어나고 있는지 분명히 알지 못합니다.SCNNode의 convertTransform - 배경 숨기기

let targetNodeTransform = targetNode?.convertTransform(transform, from: nil) 

변환의 역함수가 같을 것이라고 Eigen을 사용하고 있습니다. 그렇다고 볼 수는 없으므로 월드 좌표 공간에서 오브젝트 좌표 공간으로 이동할 때 convertTransform에서 어떤 현상이 발생합니까? Eigen을 사용하여 구현할 수 있도록 convertTransform 뒤의 수학을 찾고 있습니다.

+1

'convertTransform '뒤에 수학을 요청하고 있습니까? 또는 수학을 이해하고 C++/Eigen으로 어떻게 구사할 지 모르십니까? –

+0

당신이 Eigen에 글을 쓰고 싶지 않으면 (worldTransform이 무엇인지 모르겠다. 나는 원점과 회전을 생각하지 않는다.) –

답변

0

결정됨 위의 convertTransform에 의해 반환 된 값과 같습니다. SCNNode의 worldTransform

세계 변환에 대한 설명서에 따르면

let targetNodeTransform = SCNMatrix4Mult(transform, SCNMatrix4Invert((targetNode?.worldTransform)!)); 

노드의 장면의 좌표 공간에 공간 변환 상대 좌표입니다. 이 변환은 노드의 변환 특성과 노드의 노드, 부모의 부모 등의 변환 속성을 장면의 rootNode 객체까지 연결하는 입니다.