【问题标题】:THREE.JS - Lock y axis rotation when using OrbitControlsTHREE.JS - 使用 OrbitControls 时锁定 y 轴旋转
【发布时间】:2019-02-08 03:52:31
【问题描述】:

我有一个 three.js 场景,我使用 OrbitControls 围绕 0,0,0 的原点位置旋转相机

我正在尝试锁定相机,使其能够在 y 轴上无限旋转(垂直向上或向下)

您可以在这里看到我正在处理的场景: https://www.fariskassim.com/stage/rebel9/gyeonggicheon/carousel/v1/index.html

我尝试了以下方法,但它并没有真正旋转一圈,也不是无限的

  controls.minAzimuthAngle = 0;
  controls.maxAzimuthAngle = 0;

这里有一个类似的问题将相机锁定在 x 轴上,但我不确定如何将其更改为仅锁定 y Lock x axis rotation when using OrbitControls - Three.js

【问题讨论】:

    标签: javascript three.js


    【解决方案1】:

    使用

    controls.minPolarAngle=controls.maxPolarAngle=1.57079
    

    【讨论】:

    • 您是否只是从链接的问题中复制了答案?你至少可以解释你从哪里得到这个看似随机的数字。 (是的,我知道它是 Math.PI/2)。
    • 您还将看到链接到的示例现在正在使用controls.minAzimuthAngle = Math.PI; controls.maxAzimuthAngle = Math.PI;
    • 谢谢。我想锁定垂直轴,这行得通!
    【解决方案2】:

    我将在此处添加此内容以供将来参考,因为 OP 似乎可以使用它:

    controls.minAzimuthAngle = Math.PI;
    controls.maxAzimuthAngle = Math.PI;
    

    【讨论】:

      猜你喜欢
      • 2019-12-29
      • 1970-01-01
      • 2020-08-14
      • 1970-01-01
      • 2015-05-11
      • 1970-01-01
      • 1970-01-01
      • 2013-07-28
      • 1970-01-01
      相关资源
      最近更新 更多