:github_url: hide .. Generated automatically by doc/tools/makerst.py in Godot's source tree. .. DO NOT EDIT THIS FILE, but the Bone2D.xml source instead. .. The source is found in doc/classes or modules//doc_classes. .. _class_Bone2D: Bone2D ====== **Inherits:** :ref:`Node2D` **<** :ref:`CanvasItem` **<** :ref:`Node` **<** :ref:`Object` **Category:** Core Brief Description ----------------- Joint used with :ref:`Skeleton2D` to control and animate other nodes. Properties ---------- +---------------------------------------+-------------------------------------------------------------+ | :ref:`float` | :ref:`default_length` | +---------------------------------------+-------------------------------------------------------------+ | :ref:`Transform2D` | :ref:`rest` | +---------------------------------------+-------------------------------------------------------------+ Methods ------- +---------------------------------------+-------------------------------------------------------------------------------------------+ | void | :ref:`apply_rest` **(** **)** | +---------------------------------------+-------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_index_in_skeleton` **(** **)** const | +---------------------------------------+-------------------------------------------------------------------------------------------+ | :ref:`Transform2D` | :ref:`get_skeleton_rest` **(** **)** const | +---------------------------------------+-------------------------------------------------------------------------------------------+ Description ----------- Use a hierarchy of ``Bone2D`` bound to a :ref:`Skeleton2D` to control, and animate other :ref:`Node2D` nodes. You can use ``Bone2D`` and ``Skeleton2D`` nodes to animate 2D meshes created with the Polygon 2D UV editor. Each bone has a :ref:`rest` transform that you can reset to with :ref:`apply_rest`. These rest poses are relative to the bone's parent. If in the editor, you can set the rest pose of an entire skeleton using a menu option, from the code, you need to iterate over the bones to set their individual rest poses. Property Descriptions --------------------- .. _class_Bone2D_property_default_length: - :ref:`float` **default_length** +----------+---------------------------+ | *Setter* | set_default_length(value) | +----------+---------------------------+ | *Getter* | get_default_length() | +----------+---------------------------+ Length of the bone's representation drawn in the editor's viewport in pixels. ---- .. _class_Bone2D_property_rest: - :ref:`Transform2D` **rest** +----------+-----------------+ | *Setter* | set_rest(value) | +----------+-----------------+ | *Getter* | get_rest() | +----------+-----------------+ Rest transform of the bone. You can reset the node's transforms to this value using :ref:`apply_rest`. Method Descriptions ------------------- .. _class_Bone2D_method_apply_rest: - void **apply_rest** **(** **)** Stores the node's current transforms in :ref:`rest`. ---- .. _class_Bone2D_method_get_index_in_skeleton: - :ref:`int` **get_index_in_skeleton** **(** **)** const Returns the node's index as part of the entire skeleton. See :ref:`Skeleton2D`. ---- .. _class_Bone2D_method_get_skeleton_rest: - :ref:`Transform2D` **get_skeleton_rest** **(** **)** const Returns the node's :ref:`rest` ``Transform2D`` if it doesn't have a parent, or its rest pose relative to its parent.