【发布时间】:2016-05-02 08:16:30
【问题描述】:
我希望有人可以帮助我解决这个问题。在 three.js 中,我在位于 (0,0,0) 位置的 SphereGeometry 内创建了一个相机。我正在球体的墙上投射全景图像。
我正在尝试在 threejs 框架之外创建一些交互式 JS 元素,这些元素会根据相机所面对的方向进行触发。我得到了两个参数,theta & phi,它们分别是 x & z 和 y & z 沿图像的 360 度旋转角度。这个概念是,如果那个点(或向量)在相机的视野中,它会触发一些 JS 事件。请注意,该点不是一个对象,而是一组任意旋转角度。此外,使用鼠标或设备方向移动相机。换句话说,我对以编程方式将相机移动到这些点不感兴趣,而是只有在手动旋转相机并且这些点进入视野时才会执行 JS。
最初,我开始使用 Frustums.containsPoint 方法,但意识到我可能并不是真的在寻找空间中的特定点,而是在寻找相机角度。我想也许改用 camera.getWorldDirection() 或 camera.rotation 会提供正确的天使,但我似乎被困在这里。
任何帮助将不胜感激。
【问题讨论】:
-
欢迎来到 StackOverflow。请您看看stackoverflow.com/help/on-topic 并向我们展示您到目前为止所做的事情吗?谢谢!
标签: javascript three.js rotation panoramas