使用滑块

时间:2019-02-01 13:27:21

标签: javascript html three.js slider onchange

您好,我正在使用(Three.js库)进行网格转换。我使用HTML滑块更新值,以便可以使用JavaScript对其进行更改。

我的例子:

description image

这很好,但是我不知道滑块的事件监听器发生了什么。基本上发生的事情是该功能位于 onchange属性中,但是它看起来像 onclick

<input type="range" value=n; min=n; max=n; 
    onchange="set_Radius()";
>
input type="range" value=n; min=n; max=n; 
    onchange="set_Theta()";
>

我要移动立方体:

animate() {
   var sphericalPos = new THREE.Spherical(get_Radius(), get_Theta(), 0);  
   cube_Mesh.position.setFromSpherical(sphericalPos);
}

问题:仅当我释放滑块上的鼠标单击时,此方法才有效。例如,如果将滑块半径从50移到150,则只会更新50和150,而不会更新任何数字。

Q1:有什么办法可以解决上述问题?

Q2:是否可以锁定多维数据集的面方向,以便它可以在任何位置凝视原点(例如,类似于L_Click Mouse事件中的OrbitController)?

1 个答案:

答案 0 :(得分:2)

  1. 使用oninput事件监听器代替onchange
  2. 使用.lookAt()方法将立方体面对原点。