什么是包围盒(Box3)
就是一个长方体空间,将模型所有顶点包围起来的最小长方体空间。
描述一个长方体包围盒需要通过xyz坐标来表示,X范围[Xmin,Xmax],Y范围[Ymin,Ymax],Z范围[Zmin,Zmax],.min属性值是Vector3(Xmin, Ymin, Zmin),.max属性值是Vector3(Xmax, Ymax, Zmin)
API
const box3 = new THREE.Box3();
//可以自定义 .min 和 .max 来控制包围盒(Box3)的 的包围范围
box3.min = new THREE.Vector3(-10, -10,0);
box3.max = new THREE.Vector3(100, 20,50);
计算模型最小包围盒 .expandByObject()
//定义一个包围盒
const box3 = new THREE.Box3();
// 计算模型包围盒
box3.expandByObject(mesh);
console.log('查看包围盒',box3);
包围盒尺寸 .getSize()
//定义一个包围盒
const box3 = new THREE.Box3();
//定义一个三位向量
const size = new THREE.Vector3();
// 计算包围盒尺寸,并将尺寸保存在 size 向量中
box3.getSize(size);
console.log('模型包围盒尺寸',size);
包围盒几何中心 .getCenter()
//定义一个包围盒
const box3 = new THREE.Box3();
//定义一个三位向量
const center = new THREE.Vector3();
// 计算包围盒中心坐标,并将中心坐标保存在center向量中
box3.getCenter(center);
console.log('模型中心坐标',center);