【发布时间】:2012-08-08 07:27:19
【问题描述】:
我创建了一个圆柱体,我想通过更改它的边界框将它的旋转中心移动到它的一端,但它不起作用。
有一个我一直在研究的例子。
基本上我想旋转圆柱体,就好像它是一把被它的手柄挥动的剑。
【问题讨论】:
标签: three.js
我创建了一个圆柱体,我想通过更改它的边界框将它的旋转中心移动到它的一端,但它不起作用。
有一个我一直在研究的例子。
基本上我想旋转圆柱体,就好像它是一把被它的手柄挥动的剑。
【问题讨论】:
标签: three.js
在我的案例中,我采用了一种使用枢轴的方法。基本上,您创建一个枢轴点:
var pointToRotateAround;
var objectToRotate;
...
var pivot = new THREE.Object3D();
pivot.position=pointToRotateAround.position;
pivot.add(objectToRotate);
scene.add(pivot);
...
function render (){
pivot.rotation.z +=0.05;
}
...
它提供了使一个物体围绕另一个或任何点旋转的可能方法。以下是有关该方法的更多信息:https://github.com/mrdoob/three.js/issues/1830
【讨论】:
在一些帮助下找到了。
geometry.applyMatrix( new THREE.Matrix4().makeTranslation(x, y, z) );
使用它我将圆柱体的 y 平移了 100 个点,所以它基本上在它的下端旋转。
【讨论】:
geometry.translate(x, y, z);,请参阅stackoverflow.com/questions/12835361/…