SCNScene에서 추출중인 노드가 있습니다. 그것에 대한 정보가 있지만 경계 상자 계산 방법에 대해 혼란스러워합니다. 이를 사용하여 벡터 0, 0, 0에로드되면 노드는 위치 :SCNNode getBoundingBoxMin
[myNode setPosition: SCNVector3Make(0, 0, 0)];
그러나, 경계 상자는 여전히 -1 min.x 보고서.
방금 0에 위치시킨 경우 어떻게 될까요? 또한 노드가 실제로 화면에서 예상대로 움직이더라도 벡터 값을 제공하는 것은 중요하지 않으며 항상 min.x가 -1입니다.
정교하게 : 너비가 2 단위 인 큐브가있는 경우 경계 상자의 최소 및 최대 모서리는 항상 ((-1, -1, -1) 및 (1, 1, 1)'* 독립적으로 노드의 위치 *. 경계 상자는 항상 수신기의 좌표계로 표현되며 큐브 차원은 그대로 유지되므로 노드의 경계 상자는 그대로 유지됩니다. 변환 유틸리티를 사용하여 월드 공간에서 이러한 좌표를 표현해야합니다. – mnuages
오른쪽. :) 부모의 좌표계에서 노드의 경계 상자를 원한다면 [convert] (https://developer.apple.com/library/prerelease/ios/documentation/SceneKit/Reference/SCNNode_Class/)해야합니다. index.html # // apple_ref/occ/instm/SCNNode/convertPosition : fromNode :) 해당 벡터. 또는 부모 노드의 유일한 자식 인 경우 부모 노드 (또는 부모의 표시 노드)에 해당 경계 상자가 있는지 물어보십시오. – rickster
감사합니다. 당신은 2 단위의 큐브가 항상 (-1, -1, -1)에서 시작할 것이라고 언급합니다. 첫 번째로 놓았을 때 (0, 0, 0)을 중심으로했기 때문입니까? 따라서 1 단위는 0입니다. – Roo