L'axe a aligné des boîtes de délimitation pour le plaisir et le profit.
var aabb = require ( 'aabb-3d' )
var bounding_box = aabb ( [ 0 , 0 , 0 ] , [ 12 , 12 , 12 ] ) // x, y, z == 0; width, height, depth == 12
, other = aabb ( [ 10 , 10 , 10 ] , [ 2 , 2 , 2 ] )
bounding_box . intersects ( other ) // true
bounding_box . translate ( [ 2 , 2 , 2 ] ) // moves the bounding box
bounding_box . expand ( other ) // returns a new aabb that surrounds both bboxes
Renvoie un nouvel AABB.
Renvoie:
x0/y1/z1---x1/y1/z1
depth-> / /|
/ / |
x0/y1/z0 -- x1/y1/z0
| | |
| | <-- height
| | /
| | /
x0/y0/z0 ----- x1/y0/z0
^
|
width
déplace la boîte. se retourne.
Renvoie True si les deux boîtes de délimitation se croisent (ou touchent du tout.)
Renvoie un nouvel aabb
représentant la zone partagée des deux AABB. Renvoie null
si les cases ne se croisent pas.
Renvoie un nouvel aabb
qui entoure les deux AABB.
Mit