已知某个物体的物体坐标系坐标原点在世界坐标系中的位置,现需要将物体坐标系绕Y轴旋转一个角度,网上搜到的办法是把这个物体放到一个“盒子”里,通过旋转盒子来旋转原物体的坐标系,但发现会有个问题,即盒子的坐标原点与物体的坐标原点不重合,导致定位发生偏差,请问有解决办法吗?或者说有其它的旋转物体坐标系的办法吗?不胜感激!
我找到解决方案了,分享给大家,rotation改变的是子对象的坐标系,但是不改变本身的坐标系角度,所以想要改变其自身的坐标系方向,可以为其添加父对象,然后改变父对象的rotation。
temp=new THREE.Object3D();
temp.add(object);
temp.rotation.y=Math.PI/4;
此时object的XZ坐标系就旋转了45度。