Rect2
2D axis-aligned bounding box.
Description
Rect2 consists of a position, a size, and several utility functions. It is typically used for fast overlap tests.
Tutorials
Properties
Vector2 | end | Vector2( 0, 0 ) |
Vector2 | position | Vector2( 0, 0 ) |
Vector2 | size | Vector2( 0, 0 ) |
Methods
Rect2 | Rect2 ( Vector2 position, Vector2 size ) |
Rect2 | Rect2 ( float x, float y, float width, float height ) |
Rect2 | abs ( ) |
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, bool include_borders=false ) |
bool | is_equal_approx ( Rect2 rect ) |
Rect2 | merge ( Rect2 b ) |
Property Descriptions
Vector2 end
Default | Vector2( 0, 0 ) |
Ending corner. This is calculated as position + size
. Setting this value will change the size.
Vector2 position
Default | Vector2( 0, 0 ) |
Beginning corner. Typically has values lower than end.
Vector2 size
Default | Vector2( 0, 0 ) |
Size from position to end. Typically all components are positive.
If the size is negative, you can use abs to fix it.
Method Descriptions
Rect2 Rect2 ( Vector2 position, Vector2 size )
Constructs a Rect2
by position and size.
Constructs a Rect2
by x, y, width, and height.
Rect2 abs ( )
Returns a Rect2
with equivalent position and area, modified so that the top-left corner is the origin and width
and height
are positive.
Rect2 clip ( Rect2 b )
Returns the intersection of this Rect2
and b.
bool encloses ( Rect2 b )
Returns true
if this Rect2
completely encloses another one.
Rect2 expand ( Vector2 to )
Returns this Rect2
expanded to include a given point.
float get_area ( )
Returns the area of the Rect2
.
Rect2 grow ( float by )
Returns a copy of the Rect2
grown a given amount of units towards all the sides.
Rect2 grow_individual ( float left, float top, float right, float bottom )
Returns a copy of the Rect2
grown a given amount of units towards each direction individually.
Rect2 grow_margin ( int margin, float by )
Returns a copy of the Rect2
grown a given amount of units towards the Margin direction.
bool has_no_area ( )
Returns true
if the Rect2
is flat or empty.
bool has_point ( Vector2 point )
Returns true
if the Rect2
contains a point.
bool intersects ( Rect2 b, bool include_borders=false )
Returns true
if the Rect2
overlaps with b
(i.e. they have at least one point in common).
If include_borders
is true
, they will also be considered overlapping if their borders touch, even without intersection.
bool is_equal_approx ( Rect2 rect )
Returns true
if this Rect2
and rect
are approximately equal, by calling is_equal_approx
on each component.
Rect2 merge ( Rect2 b )
Returns a larger Rect2
that contains this Rect2
and b
.
© 2014–2020 Juan Linietsky, Ariel Manzur, Godot Engine contributors
Licensed under the MIT License.
https://docs.godotengine.org/en/3.2/classes/class_rect2.html