Javascript Three.js-使对象在缩放时保持静态
我在应用程序中使用Three.js进行2D演示,因此我使用MapControls设置了一个正交摄影机。添加到场景中的某些对象可以进行二维平移和放大/缩小。除此之外,我还有一个箭头对象,它必须是静态的,即从平移和缩放中排除。这个箭头将有一个特殊的形式和动画旋转,这就是为什么我不画它与CSS 我尝试了来自的向导,并成功地仅限制平移Javascript Three.js-使对象在缩放时保持静态,javascript,three.js,Javascript,Three.js,我在应用程序中使用Three.js进行2D演示,因此我使用MapControls设置了一个正交摄影机。添加到场景中的某些对象可以进行二维平移和放大/缩小。除此之外,我还有一个箭头对象,它必须是静态的,即从平移和缩放中排除。这个箭头将有一个特殊的形式和动画旋转,这就是为什么我不画它与CSS 我尝试了来自的向导,并成功地仅限制平移 scene.add(camera); ... camera.add(directionArrow); 但当使用鼠标滚轮放大/缩小时,箭头也会放大/缩小 这是一张复制量最
scene.add(camera);
...
camera.add(directionArrow);
但当使用鼠标滚轮放大/缩小时,箭头也会放大/缩小
这是一张复制量最小的照片
缩放时三角形(箭头)应保持静止,就像平移时一样。使用GUI层和渲染层 如果在GUI层中绘制指针,则可以根据需要更改渲染层,而不会影响GUI层 通常使用HTML完成三个.js GUI层 一旦你有了这个,你将需要获得对象的坐标并更新HTML。这是这个过程中最复杂的部分,所以这里有一篇文章介绍如何通过一些例子来实现这一点
是的,这是真的,但我想避免使用HTML和CSS作为指针,因为指针已经正确地绘制和设置了动画。只有变焦妨碍了我。使用这种方法,我将不得不全部返工。我唯一能想到的就是在缩放的相反方向缩放对象。然而,这是如此黑客和将是非常错误的,我建议修改它和使用HTML。很多时候,我们需要重做一些事情,把它做好。这很痛苦,但更好。我尝试缩放箭头,但它会改变位置,平移时也会触发缩放。看来返工是唯一的选择了。非常感谢。