threejs 本地(局部)坐标和世界坐标 学习笔记

js yekong 1171℃

1.改变子对象的position,子对象在3D空间中的坐标会发生改变。
2.改变父对象的position,子对象在3D空间中的位置也会跟着变化,也就是说父对象position和子对象position 叠加才是才是子对象的position.
任何一个模型的本地坐标(局部坐标)就是模型的position属性。
一个模型的
世界坐标
,说的是,模型自身position和所有父对象position累加的坐标。

获取世界坐标

getWorldPosition()获取世界坐标
mesh.getWorldPosition(Vector3)读取一个模型的世界坐标,并把读取结果存储到参数Vector3中。

//创建一个三维向量表示坐标
const v3 = new THREE.Vector3();
mesh.getWorldPosition(v3);
console.log('v3', v3);

给子对象添加一个局部坐标系

mesh.add(坐标系)给mesh添加一个局部坐标系。

// 可视化mesh的局部坐标系
const meshAxesHelper = new THREE.AxesHelper(50)
mesh.add(meshAxesHelper)
喜欢 (1)