Three.js 对象的“中心”是啥?
Posted
技术标签:
【中文标题】Three.js 对象的“中心”是啥?【英文标题】:What is the "center" of a Three.js object?Three.js 对象的“中心”是什么? 【发布时间】:2016-10-28 01:48:15 【问题描述】:当我使用 Blender 为对象建模时,我能够明确定义其发生平移和旋转的中心位置。使用 Three.js 对象时,我似乎找不到等效对象。
Three.js 对象是否具有定义其“中心”位置的属性?如果不是,物体的中心是如何确定的?
【问题讨论】:
【参考方案1】:在three.js中,对象的“中心”是对象本地坐标系中的原点。
如果您的对象没有围绕您想要的点旋转,那么您需要平移几何体的顶点,以便所需的中心位于原点。
geometry.translate( distX, distY, distZ );
有关更多信息和替代解决方案,请参阅this answer。
three.js r.78
【讨论】:
【参考方案2】:中心可以通过几何体的boundingBox确定,通过调用computeBoundingBox()
方法计算得到;
如果局部坐标系的原点不是几何体的中心,调用center()
方法会调整几何体以原点为中心。
见three.js source code
【讨论】:
以上是关于Three.js 对象的“中心”是啥?的主要内容,如果未能解决你的问题,请参考以下文章
three.js 在它的中心围绕 Y 轴旋转 Object3d