threeJs 修改TransformControls的显示位置
有的时候模型的原点不是自身中心而是在场景的[0, 0, 0]位置
这个时候想要让TransformControls的位置显示在模型的中心
目前找的的处理方式是修改源码
找到updateMatrixWorld
方法
updateMatrixWorld () {
...
for ( let i = 0; i < handles.length; i ++ ) {
...
if ( this.mode === 'translate') {
...
// 加入以下代码
if (this.object) { // object为TransformControls attach 的模型
const { box, center } = new Box3().setFromObject(this.object)
handle.position.copy(center) // handle为操作杆
}
...
}
...
}
...
}