Box2.expandByVector()
是 three.js
中 Box2
类的一个方法,用于将 Box2
对象向外扩展一定的距离。
Box2.expandByVector( vector: Vector2 ) : Box2
vector
:一个 Vector2
类型对象,表示在每个轴上要扩展的距离。返回扩展后的 Box2
对象。
const box = new THREE.Box2(new THREE.Vector2(0, 0), new THREE.Vector2(1, 1));
const vector = new THREE.Vector2(0.5, 0.5);
box.expandByVector(vector);
console.log(box.min); // 输出 (-0.5, -0.5)
console.log(box.max); // 输出 (1.5, 1.5)
在 Box2
对象上调用 expandByVector
方法可将其沿每个轴扩展指定距离。扩展距离为每个轴上的距离。
例如,如果 Box2
的最小值为 (0,0)
,最大值为 (1,1)
,如果我们调用 expandByVector
方法,并传入一个 Vector2
类型的对象 (0.5,0.5)
,则 Box2
将在每个轴上分别向外扩展 0.5
的距离,最终最小值为 (-0.5,-0.5)
,最大值为 (1.5,1.5)
。
需要注意的是,如果传入的 vector
参数中存在负数,那么实际上是将 Box2
在该轴向内收缩了相应的距离。
此外,Box2
在调用 expandByVector
方法后,其中心点的坐标不会改变。
Box2.expandByVector()
方法可以方便地扩展 Box2
对象的大小,并且不会改变其中心点坐标。可以在需要大范围寻找物体时使用。