2013-10-22 5 views
1

THREE.PerspectiveCameraTHREE.OrbitControls (회전)을 사용하고 있습니다. 카메라를 회전하면 Google지도에서 카메라의 방향을 나타내도록 심볼을 업데이트하고 싶습니다. 이 같은 각도 (Y)의 회전을 얻기 위해 노력카메라의 현재 회전 각도 가져 오기

:

360/Math.PI * perspectiveCamera.rotation.y; 

그것은 ..5..15...180..15..5 다음 -5..-15...-180..-15..-5에서 학위를 반환합니다.

360도 카메라의 y 회전을 얻는 다른 방법이 있습니까?

답변

0

이전에는 radians * 180/Math.PI을 사용하여 라디안을도 단위로 변환했습니다. 이 전환에 대한 자세한 내용은 here입니다. 그것은을 펼친

아니면 현재 0에서 360 :

+0

변환의 범위를 얻기 위해 계산 된 각도에 180을 추가 할 수는, 문제는 내가 camera.rotation.y에서 얻을 라디안입니다 잘 작동 (91, 92, 93 ...)을 0 (90, 89, 88 ...)으로, 0에서 -90 deg로 다시 제거하는 대신 0에서 90까지로 이동합니다. – Erevald

+0

그래, 나도 그 문제를보고있다. 업데이트시 0.01과 같은 것으로 camera.rotation.y를 증가 시키면 멋지게 작동합니다. 그러나 lookAt() 함수를 사용할 때 실패합니다. 더 깊게 파고있어, 나는 두렵다 : ( –

+1

OrbitControls 소스를 살펴봄으로써 그것을 할 수있는 방법을 찾았습니다. start_move와 end_move vars를 사용하여 거리와 현재 회전 각도를 기록합니다. – Erevald

관련 문제