微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在three.js中从坐标空间转换到另一个坐标空间

如何解决在three.js中从坐标空间转换到另一个坐标空间

我有 3d 对象并使用 Z+ 向上渲染。我想为这些对象(我在 json 文件中有)绘制边界框,但它们来自空间,Y+ 向上。

当我从 json 绘制带有质心、轴长度和旋转的框时,旋转似乎与建议的值不一致。对于来自 json 的边界框,旋转在 Y 轴上,矩阵如下所示:

"normalizedAxes": [-0.8571976356579359,-0.5149875856974073,1,0.5149875856974073,-0.8571976356579359]

但在我的场景中,我希望旋转在 Z 轴上。

我可以按如下方式交换旋转值吗:

[x,y,z] ----> [-x,z,y] 
# where x is [-0.8571976356579359,-0.5149875856974073]
# y is [0 1 0]
# z is [0.5149875856974073,-0.8571976356579359]

所以旋转矩阵变为:

rotation = [0.8571976356579359,-0.8571976356579359,1]

我是否还必须交换质心和轴长度?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。