0
일부 세계 점에 대해 정규화되지 않은 투영 Z 값을 찾고 싶습니다.실세계 점의 투영 Z 값이 three.js로 표시됩니다.
내가 현재 투영의 X를 얻을 수 있어요, mrdoob 여기서 보여줍니다 무엇을 수행하여 Y 값 : https://stackoverflow.com/a/11605007
예는 투영의 X, Y를 해제 정상화하는 방법을 보여줍니다 (범위 [에서 그것을 복용 -1 , 1] 실제 화면 좌표로). 그것은 투영 Z를 역 정규화하는 방법을 보여주지 못합니다.이 투영 Z 값도 [-1, 1]의 범위 안에 있습니다. 그러나 그것들을 역 정규화하는 방법을 모르겠습니다.
은 위에서 mrdoob의 대답에 구축, 코드에서 질문을 프레임 : 당신의 도움에 대한var width = 640, height = 480;
var widthHalf = width/2, heightHalf = height/2;
var projector = new THREE.Projector();
// this could be any point; using example from mrdoob's answer
var someWorldPoint = object.matrixWorld.getPosition().clone();
var vector = projector.projectVector(someWorldPoint, camera);
vector.x = (vector.x * widthHalf) + widthHalf;
vector.y = - (vector.y * heightHalf) + heightHalf;
// what does vector.z represent and how do I de-normalize vector.z?
감사합니다. 내 용어가 잘못되었거나 혼동을 일으키는 경우이를 수정하십시오.
감사합니다. 가능할 수 있습니까? 투영면과 직각을 이루는 선을 찾고 내 세계 점과 교차하고 두 점 사이의 거리를 찾으십시오. – paulbbauer