.. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the doc/base/classes.xml source instead. .. _class_Rect3: Rect3 ===== **Category:** Built-In Types Brief Description ----------------- Axis-Aligned Bounding Box. Member Functions ---------------- +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect3` | :ref:`Rect3` **(** :ref:`Vector3` pos, :ref:`Vector3` size **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`encloses` **(** :ref:`Rect3` with **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect3` | :ref:`expand` **(** :ref:`Vector3` to_point **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_area` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_endpoint` **(** :ref:`int` idx **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_longest_axis` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_longest_axis_index` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_longest_axis_size` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_shortest_axis` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_shortest_axis_index` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`get_shortest_axis_size` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_support` **(** :ref:`Vector3` dir **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect3` | :ref:`grow` **(** :ref:`float` by **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_no_area` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_no_surface` **(** **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`has_point` **(** :ref:`Vector3` point **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect3` | :ref:`intersection` **(** :ref:`Rect3` with **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`intersects` **(** :ref:`Rect3` with **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`intersects_plane` **(** :ref:`Plane` plane **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`intersects_segment` **(** :ref:`Vector3` from, :ref:`Vector3` to **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect3` | :ref:`merge` **(** :ref:`Rect3` with **)** | +--------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------+ Member Variables ---------------- - :ref:`Vector3` **end** - Ending corner. - :ref:`Vector3` **position** - :ref:`Vector3` **size** - Size from position to end. Description ----------- Rect3 provides an 3D Axis-Aligned Bounding Box. It consists of a position, a size, and several utility functions. It is typically used for simple (fast) overlap tests. Member Function Description --------------------------- .. _class_Rect3_Rect3: - :ref:`Rect3` **Rect3** **(** :ref:`Vector3` pos, :ref:`Vector3` size **)** Optional constructor, accepts position and size. .. _class_Rect3_encloses: - :ref:`bool` **encloses** **(** :ref:`Rect3` with **)** Return true if this :ref:`Rect3` completely encloses another one. .. _class_Rect3_expand: - :ref:`Rect3` **expand** **(** :ref:`Vector3` to_point **)** Return this :ref:`Rect3` expanded to include a given point. .. _class_Rect3_get_area: - :ref:`float` **get_area** **(** **)** Get the area of the :ref:`Rect3`. .. _class_Rect3_get_endpoint: - :ref:`Vector3` **get_endpoint** **(** :ref:`int` idx **)** Get the position of the 8 endpoints of the :ref:`Rect3` in space. .. _class_Rect3_get_longest_axis: - :ref:`Vector3` **get_longest_axis** **(** **)** Return the normalized longest axis of the :ref:`Rect3`. .. _class_Rect3_get_longest_axis_index: - :ref:`int` **get_longest_axis_index** **(** **)** Return the index of the longest axis of the :ref:`Rect3` (according to :ref:`Vector3`::AXIS\* enum). .. _class_Rect3_get_longest_axis_size: - :ref:`float` **get_longest_axis_size** **(** **)** Return the scalar length of the longest axis of the :ref:`Rect3`. .. _class_Rect3_get_shortest_axis: - :ref:`Vector3` **get_shortest_axis** **(** **)** Return the normalized shortest axis of the :ref:`Rect3`. .. _class_Rect3_get_shortest_axis_index: - :ref:`int` **get_shortest_axis_index** **(** **)** Return the index of the shortest axis of the :ref:`Rect3` (according to :ref:`Vector3`::AXIS\* enum). .. _class_Rect3_get_shortest_axis_size: - :ref:`float` **get_shortest_axis_size** **(** **)** Return the scalar length of the shortest axis of the :ref:`Rect3`. .. _class_Rect3_get_support: - :ref:`Vector3` **get_support** **(** :ref:`Vector3` dir **)** Return the support point in a given direction. This is useful for collision detection algorithms. .. _class_Rect3_grow: - :ref:`Rect3` **grow** **(** :ref:`float` by **)** Return a copy of the :ref:`Rect3` grown a given amount of units towards all the sides. .. _class_Rect3_has_no_area: - :ref:`bool` **has_no_area** **(** **)** Return true if the :ref:`Rect3` is flat or empty. .. _class_Rect3_has_no_surface: - :ref:`bool` **has_no_surface** **(** **)** Return true if the :ref:`Rect3` is empty. .. _class_Rect3_has_point: - :ref:`bool` **has_point** **(** :ref:`Vector3` point **)** Return true if the :ref:`Rect3` contains a point. .. _class_Rect3_intersection: - :ref:`Rect3` **intersection** **(** :ref:`Rect3` with **)** Return the intersection between two :ref:`Rect3`. An empty Rect3 (size 0,0,0) is returned on failure. .. _class_Rect3_intersects: - :ref:`bool` **intersects** **(** :ref:`Rect3` with **)** Return true if the :ref:`Rect3` overlaps with another. .. _class_Rect3_intersects_plane: - :ref:`bool` **intersects_plane** **(** :ref:`Plane` plane **)** Return true if the :ref:`Rect3` is at both sides of a plane. .. _class_Rect3_intersects_segment: - :ref:`bool` **intersects_segment** **(** :ref:`Vector3` from, :ref:`Vector3` to **)** Return true if the :ref:`Rect3` intersects the line segment between from and to .. _class_Rect3_merge: - :ref:`Rect3` **merge** **(** :ref:`Rect3` with **)** Combine this :ref:`Rect3` with another, a larger one is returned that contains both.