2012-06-09 7 views
2

화면 위치 (X, Y)를 등각 투영 위치로 변환하는 방법은 무엇입니까? http://jsfiddle.net/CR3JS/화면 위치를 등각 투영 위치로 변환하는 방법

이 수식 축입니다 :

여기 화면 위치로 등각 투영 위치를 변환 코드가 http://s15.postimage.org/xyxfukxkp/iso_Axis.jpg

을 그리고 내 질문은 : 화면 위치를 변환하는 방법 (X, Y) 등각 투영 위치로? 같은

뭔가 : - 각기 다른 Z의 수준을 한 차원 화면 위치가 여러 가지 다른 타일에 매핑하기 때문에

screenToIsometric(144, 88) -> X: 10, Y: 0, Z: 1 
+0

몇도 회전하고 싶으십니까? 회전 행렬 (144, 88,0)에 회전 행렬을 곱하면됩니다. http://en.wikipedia.org/wiki/Rotation_matrix#In_three_dimensions 물론 각도를 지정하면 x와 y 값은 상수에 의해 xyz를 얻고 그 반대의 경우도 마찬가지입니다. –

답변

1

당신은 하나의 X, Y, Z 포인트를 가질 수 없습니다. 등각 투영 뷰 사용자가 어떤 오브젝트를 클릭했는지 파악하려한다면, 가장 쉬운 방법이지만, 다소 더러운 방법은 위부터 아래로 시작하는 모든 Z 레벨에 루프가 될 수 있습니다. 샘플 함수에서 공식의 역순을 사용하고 적합한 것이 있는지 확인하십시오 위치를 클릭하고이 장소가 비어 있으면 낮은 단계로 진행하십시오.

관련 문제