Box2.setFromCenterAndSize(center: Vector2, size: Vector2)
该方法用于从矩形的中心点和尺寸设置Box2对象的属性。
center:[Vector2] 矩形的中心点坐标。size:[Vector2] 矩形的尺寸。该方法没有返回值,但是会修改Box2对象的属性。
const box = new Box2();
const center = new Vector2(5, 5);
const size = new Vector2(2, 3);
box.setFromCenterAndSize(center, size);
Box2是一个二维的矩形框类,用于描述平面中的矩形区域。Box2.setFromCenterAndSize()方法通过矩形的中心点和尺寸来设置Box2对象的min和max属性,这两个属性描述了矩形的左下角和右上角顶点的坐标。
该方法的实现如下:
setFromCenterAndSize(center, size) {
    const halfSize = tempVec.subVectors(size, zeroVec).multiplyScalar(0.5);
    this.min.copy(center).sub(halfSize);
    this.max.copy(center).add(halfSize);
    return this;
}
其中,tempVec和zeroVec是临时的[Vector2]对象,分别表示中心点和尺寸向量的一半,subVectors()表示两个向量的差,multiplyScalar()表示将向量的每个分量乘以一个标量,copy()表示将向量的值复制给另一个向量,add()表示两个向量的和。