【发布时间】:2018-10-05 19:15:43
【问题描述】:
我有一个透视相机,俯视 Z 轴。我想在相机前面(Y 轴)的给定距离(比如说 100)处找到地板的 X、Z 位置。
相机旋转顺序是'YXZ',所以Y描述了偏航。
camera = new THREE.PerspectiveCamera(45, window.app.width / window.app.height, 1, 10000);
camera.rotation.order = "YXZ";
camera.position.z = 0;
camera.position.y = 50;
我正在尝试计算相机正前方区域的 XZ:
const inFrontOfCamera = {
x: camera.position.x + (Math.cos(camera.rotation.y) * 100),
z: camera.position.z + (Math.sin(camera.rotation.y) * 100),
}
当我在某些方向上寻找时,这很有效,但在其他方向上却没有。我觉得我很接近,但我的理解有差距!
非常感谢任何指针和解决方案。
谢谢。
【问题讨论】:
标签: 3d three.js rotation trigonometry