Category: Built-In Types

Brief Description

2D Axis-aligned bounding box.

Member Functions

Rect2 Rect2 ( Vector2 pos, Vector2 size )
Rect2 Rect2 ( float x, float y, float width, float height )
Rect2 clip ( Rect2 b )
bool encloses ( Rect2 b )
Rect2 expand ( Vector2 to )
float get_area ( )
Rect2 grow ( float by )
Rect2 grow_individual ( float left, float top, float right, float bottom )
Rect2 grow_margin ( int margin, float by )
bool has_no_area ( )
bool has_point ( Vector2 point )
bool intersects ( Rect2 b )
Rect2 merge ( Rect2 b )

Member Variables

  • Vector2 end - Ending corner.
  • Vector2 pos - Position (starting corner).
  • Vector2 size - Size from position to end.


Rect2 provides an 2D Axis-Aligned Bounding Box. It consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.

Member Function Description

Construct a Rect2 by position and size.

Construct a Rect2 by x, y, width and height.

Returns the intersection of this Rect2 and b.

Returns true if this Rect2 completely encloses another one.

Return this Rect2 expanded to include a given point.

Get the area of the Rect2.

Return a copy of the Rect2 grown a given amount of units towards all the sides.

  • bool has_no_area ( )

Return true if the Rect2 is flat or empty.

Return true if the Rect2 contains a point.

Return true if the Rect2 overlaps with another.

Combine this Rect2 with another, a larger one is returned that contains both.