Files
godot-docs/classes/class_texturerect.rst

88 lines
5.0 KiB
ReStructuredText

.. Generated automatically by doc/tools/makerst.py in Godot's source tree.
.. DO NOT EDIT THIS FILE, but the TextureRect.xml source instead.
.. The source is found in doc/classes or modules/<name>/doc_classes.
.. _class_TextureRect:
TextureRect
===========
**Inherits:** :ref:`Control<class_control>` **<** :ref:`CanvasItem<class_canvasitem>` **<** :ref:`Node<class_node>` **<** :ref:`Object<class_object>`
**Category:** Core
Brief Description
-----------------
Draws a sprite or a texture inside a User Interface. The texture can tile or not.
Member Functions
----------------
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_stretch_mode<class_TextureRect_get_stretch_mode>` **(** **)** const |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`Texture<class_texture>` | :ref:`get_texture<class_TextureRect_get_texture>` **(** **)** const |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`has_expand<class_TextureRect_has_expand>` **(** **)** const |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_expand<class_TextureRect_set_expand>` **(** :ref:`bool<class_bool>` enable **)** |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_stretch_mode<class_TextureRect_set_stretch_mode>` **(** :ref:`int<class_int>` stretch_mode **)** |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
| void | :ref:`set_texture<class_TextureRect_set_texture>` **(** :ref:`Texture<class_texture>` texture **)** |
+--------------------------------+--------------------------------------------------------------------------------------------------------------+
Member Variables
----------------
- :ref:`bool<class_bool>` **expand** - If ``true``, the texture scales to fit its bounding rectangle. Default value: ``false``.
- :ref:`int<class_int>` **stretch_mode** - Controls the texture's behavior when you resize the node's bounding rectangle. Set it to one of the ``STRETCH\_\*`` constants. See the constants to learn more.
- :ref:`Texture<class_texture>` **texture** - The node's :ref:`Texture<class_texture>` resource.
Numeric Constants
-----------------
- **STRETCH_SCALE_ON_EXPAND** = **0** --- Scale to fit the node's bounding rectangle, only if ``expand`` is ``true``. Default ``stretch_mode``, for backwards compatibility. Until you set ``expand`` to ``true``, the texture will behave like ``STRETCH_KEEP``.
- **STRETCH_SCALE** = **1** --- Scale to fit the node's bounding rectangle.
- **STRETCH_TILE** = **2** --- Tile inside the node's bounding rectangle.
- **STRETCH_KEEP** = **3** --- The texture keeps its original size and stays in the bounding rectangle's top-left corner.
- **STRETCH_KEEP_CENTERED** = **4** --- The texture keeps its original size and stays centered in the node's bounding rectangle.
- **STRETCH_KEEP_ASPECT** = **5** --- Scale the texture to fit the node's bounding rectangle, but maintain the texture's aspect ratio.
- **STRETCH_KEEP_ASPECT_CENTERED** = **6** --- Scale the texture to fit the node's bounding rectangle, center it and maintain its aspect ratio.
- **STRETCH_KEEP_ASPECT_COVERED** = **7** --- Scale the texture so that the shorter side fits the bounding rectangle. The other side clips to the node's limits.
Description
-----------
Use TextureRect to draw icons and sprites in your User Interfaces. To create panels and menu boxes, take a look at NinePatchFrame. Its Stretch Mode property controls the texture's scale and placement. It can scale, tile and stay centered inside its bounding rectangle. TextureRect is one of the 5 most common nodes to create game UI.
Member Function Description
---------------------------
.. _class_TextureRect_get_stretch_mode:
- :ref:`int<class_int>` **get_stretch_mode** **(** **)** const
.. _class_TextureRect_get_texture:
- :ref:`Texture<class_texture>` **get_texture** **(** **)** const
.. _class_TextureRect_has_expand:
- :ref:`bool<class_bool>` **has_expand** **(** **)** const
.. _class_TextureRect_set_expand:
- void **set_expand** **(** :ref:`bool<class_bool>` enable **)**
.. _class_TextureRect_set_stretch_mode:
- void **set_stretch_mode** **(** :ref:`int<class_int>` stretch_mode **)**
.. _class_TextureRect_set_texture:
- void **set_texture** **(** :ref:`Texture<class_texture>` texture **)**