Three.js - 翻译与移动?

Alv*_*par 3 3d translation three.js

假设我有一个自定义立方体网格,原点位于其中一个角落.我想指定立方体的原点位于它的中心.我知道我可以进行翻译,它似乎有效(我可以通过旋转立方体来证明它的工作原理,它围绕中心点旋转).

但是,我一直认为翻译只是移动到3D空间中的另一个点(而不是设置原点).

我错过了什么,或者我只是混淆了两件实际上相同的东西?

*总结*

请注意,如果我想移动一个对象,我只需更新位置向量.并应用翻译SEEMS来更新原点.我的困惑来自于我的理解,即"翻译"只是在3D空间中"移动"物体的一个奇特术语.因此,究竟什么是翻译(在3d空间中移动,或更新原点,或两者兼而有之)?

Ice*_*You 5

几何上的平移移动原点:

var geometry = new THREE.CubeGeometry( 1, 1, 1 );
geometry.applyMatrix( new THREE.Matrix4().makeTranslation( 0, 0.5, 0 ) );
Run Code Online (Sandbox Code Playgroud)

Object3D上的翻译移动位置:

var obj = new THREE.Mesh(geometry, material);
obj.position.set(0.5, 0.5, 0.5);
Run Code Online (Sandbox Code Playgroud)