javascript - 如何旋转对象并将其旋转重置为零?

标签 javascript html canvas three.js

营业额的问题是轴附加到几何体上。

现在:http://f2.s.qip.ru/cMfvUhEy.png

现在(旋转):http://f3.s.qip.ru/cMfvUhEC.png

必需(旋转):http://f1.s.qip.ru/cMfvUhEG.png

最佳答案

mesh.rotation.x = Math.PI / 180 * 90;

设置旋转,它不会增加它。

在 three.js 中,对象的方向可以通过其欧拉旋转向量 object.rotation 指定。旋转矢量的三个分量分别表示围绕对象内部 x 轴、y 轴和 z 轴的弧度旋转。

执行旋转的顺序由 object.rotation.order 指定。默认顺序为“XYZ”——首先围绕 x 轴旋转,然后是 y 轴,然后是 z 轴。

旋转是相对于对象的内部 坐标系执行的——而不是世界坐标系。这个很重要。因此,例如,发生 x 轴旋转后,对象的 y 轴和 z 轴通常将不再与世界轴对齐。以这种方式指定的旋转不是唯一的。

有关欧拉 Angular 的更多信息,请参阅 Wikipedia article . Three.js 遵循 Tait-Bryan 约定,如文章中所述。

编辑:如果您想“重置”旋转,请参阅 this answer .

three.js r.73

关于javascript - 如何旋转对象并将其旋转重置为零?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14774633/

相关文章:

javascript - 在 Angular Directive(指令)中实现关闭按钮

javascript - 无法让我的地理空间查询工作。在 Node 中查询 Mongo

javascript - 如果 Facebook 评论为 0,则 Conceal div

javascript - 获取 Canvas 中控制台位置处的像素颜色

javascript删除字符串中所有连续出现的字符

javascript - 无法删除我附加的事件监听器

javascript - 如何在单击时打开 tr 内的表 tr

html - 导航栏元素不适合每个屏幕

javascript - 在 Javascript 中创建非矩形形状的斜 Angular 效果

javascript - 将绘图从 Canvas 保存到本地文件夹