AABB

A 3D axis-aligned bounding box.

Description

AABB consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.

It uses floating-point coordinates. The 2D counterpart to AABB is Rect2.

Negative values for size are not supported and will not work for most methods. Use abs to get an AABB with a positive size.

Note: Unlike Rect2, AABB does not have a variant that uses integer coordinates.

Note

There are notable differences when using this API with C#. See C# API differences to GDScript for more information.

Tutorials

Properties

Vector3

end

Vector3(0, 0, 0)

Vector3

position

Vector3(0, 0, 0)

Vector3

size

Vector3(0, 0, 0)

Constructors

AABB

AABB ( )

AABB

AABB ( AABB from )

AABB

AABB ( Vector3 position, Vector3 size )

Methods

AABB

abs ( ) const

bool

encloses ( AABB with ) const

AABB

expand ( Vector3 to_point ) const

Vector3

get_center ( ) const

Vector3

get_endpoint ( int idx ) const

Vector3

get_longest_axis ( ) const

int

get_longest_axis_index ( ) const

float

get_longest_axis_size ( ) const

Vector3

get_shortest_axis ( ) const

int

get_shortest_axis_index ( ) const

float

get_shortest_axis_size ( ) const

Vector3

get_support ( Vector3 dir ) const

float

get_volume ( ) const

AABB

grow ( float by ) const

bool

has_point ( Vector3 point ) const

bool

has_surface ( ) const

bool

has_volume ( ) const

AABB

intersection ( AABB with ) const

bool

intersects ( AABB with ) const

bool

intersects_plane ( Plane plane ) const

Variant

intersects_ray ( Vector3 from, Vector3 dir ) const

Variant

intersects_segment ( Vector3 from, Vector3 to ) const

bool

is_equal_approx (