AABB: Difference between revisions
m (1 revision imported) |
m (1 revision imported) |
(No difference)
|
Latest revision as of 08:02, 13 February 2023
Script Reference | AABB Functions |
CenterPoint
Gets the center of the bounding box.
Parameters: none
Returns: Vector3 - center point of the AABB.
Example:
b = AABB();
v = b.CenterPoint();
Contains
Checks if the bounding box contains a point.
Parameters: (Vector3)
Returns: true if Vector3 parameter is contained within AABB, false if not.
Example:
b = AABB();
v = Vector3();
if(b.Contains(v))
{
print("v is inside b");
}
Expand
Expands the bounding box to contain a position.
Parameters: (Vector3)
Returns: none
Example:
b = AABB();
v1 = Vector3(40,50,60);
v2 = Vector3(30,10,90);
b.Expand(v1);
b.Expand(v2);
FindIntersection
Gets the AABB overlap of 2 bounding boxes.
Parameters: (AABB)
Returns: AABB the bounds that overlaps the bounding box. Null if there is no overlap.
Example:
b = AABB();
b2 = AABB();
overlapAABB = b.FindIntersection(b2);
if(overlapAABB)
{
print("b overlaps b2");
}
GetAxisLength
Gets the length of an axis of the bounding box.
Parameters: ("x"),("y"),or ("z")
Returns: float - length of requested AABB axis.
Example:
b = AABB();
xlen = b.GetAxisLength("x");
Intersects
Checks if 2 AABBs intersect.
Parameters: (AABB)
Returns: true if AABB overlaps this AABB, false if not.
Example:
b = AABB();
b2 = AABB();
if(b.Intersects(b2))
{
print("b touches b2");
}
IsZero
Checks if the AABB is has no volume.
Parameters: none
Returns: true if the AABB is not defined(0,0,0 for mins and maxs)
Example:
b = AABB();
if(b.IsZero())
{
}
Scale
Scales the AABB by some amount in every direction.
Parameters: (float)
Returns: none
Example:
b = AABB();
b.Scale(10);
Set
Initializes the AABB mins and maxs.
Parameters: (Vector3, Vector3)
Returns: none
Example:
b = AABB();
min = Vector3(-10, -10, -10);
max = Vector3(10, 10, 10);
b.Set(min, max);
SetCenter
Translates the bounding box to some position. Usually used to move a local space bounding box to world space.
Parameters: (Vector3)
Returns: none
Example:
b = AABB();
c = Vector3(10, 10, 10);
b.SetCenter(c);