Box2

2D平面内的边框.

function Box2( min, max ) { this.min = ( min !== undefined ) ? min : new Vector2( +Infinity, +Infinity ); this.max = ( max !== undefined ) ? max : new Vector2( -Infinity, -Infinity ); }

Attributes

min : Vector2(x, y)

Default value : new Vector2( +Infinity, +Infinity )
Description : 框的下边界(x, y)

max : Vector2(x, y)

Default value : new Vector2( -Infinity, -Infinity )
Description : 框的上边界(x, y)

Methods

set( min, max ) : this
min Vector2 下边界
max Vector2 上边界

设置边框的下边界和上边界.

setFromPoints( points ) : this
points Array 点数组

用 points 中的所有的点来设置边框的下边界和上边界.

setFromCenterAndSize( center, size ) : this
center Vector2 中心点
size Vector2 尺寸

边框的中心在center, 长宽为size中的值.

makeEmpty( ) : this

使边框为空.

isEmpty( ) : Boolean

边框是否为空.

getCenter( target ) : target
target Vector2 返回的计算结果

把边框的中心点赋值给 target.

getSize( target ) : target
target Vector2 返回的计算结果

把边框的长宽赋值给 target.

expandByPoint( point ) : this
point Vector2 要被包含的点

延伸边框使其包含点 point.

expandByVector( vector ) : this
vector Vector2 扩展向量

通过向量等边扩展边框, 使其宽度在两个方向上依照vector的x分量扩展, 高度在两个方向上依照vector的y分量扩展.

expandByScalar( scalar ) : this
scalar Float 扩展的距离

通过标量扩展框的每个维度, 如果为负数, 则将收缩尺寸.

containsPoint( point ) : Boolean
point Vector2

检测点point是否在边框内或边框上.

containsBox( box ) : Boolean
box Box2 边框

检测box是否在边框内, 或者与自身相同.

getParameter( point, target ) : target
point Vector2
target Vector2 要被复制到的目标

点point跟自身在宽度和高度上的比例.

intersectsBox( box ) : Boolean
box Box2 边框

检测box是否与自身相交.

clampPoint( point, target ) : target
point Vector2
target Vector2 要被复制到的目标

将点point限制在自身范围内.

distanceToPoint( point ) : Float
point Vector2

返回边框的与point的距离. 如果point位于此框内, 则距离将为0.

intersect( box ) : this
box Box2 边框

返回两个边框的交集, 将上边界设为两个框中的较小者, 下边界设置为两个框中的较大者.

translate( offset ) : this
offset Vector2 偏移量

对边框的上边界和下边界添加偏移量, 使其平移.

union( box ) : this
box Box2 边框

合并两个边框, 将上边界设为两个框中的较大者, 下边界设置为两个框中的较小者.

equals( box ) : Boolean
box Box2 边框

检测自身是否与box的下边界、上边界相同.

clone( ) : Box2

复制自身.

copy( b ) : this
b Box2 二维边框

把一个二维边框赋值到自身.