Files
godot-docs-l10n/classes/ru/class_bone2d.rst

213 lines
13 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_Bone2D:
Bone2D
======
**Наследует:** :ref:`Node2D<class_Node2D>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
Соединение, используемое совместно с :ref:`Skeleton2D<class_Skeleton2D>` для управления и анимации других узлов.
.. rst-class:: classref-introduction-group
Описание
----------------
Иерархию **Bone2D** можно привязать к :ref:`Skeleton2D<class_Skeleton2D>` для управления и анимации других узлов :ref:`Node2D<class_Node2D>`.
Вы можете использовать узлы **Bone2D** и :ref:`Skeleton2D<class_Skeleton2D>` для анимации 2D-сеток, созданных с помощью UV-редактора :ref:`Polygon2D<class_Polygon2D>`.
У каждой кости есть преобразование :ref:`rest<class_Bone2D_property_rest>`, которое можно сбросить с помощью :ref:`apply_rest()<class_Bone2D_method_apply_rest>`. Эти позы покоя относятся к родительской кости.
Если в редакторе вы можете задать позу покоя всего скелета с помощью пункта меню, из кода вам нужно будет перебрать кости, чтобы задать их индивидуальные позы покоя.
.. rst-class:: classref-reftable-group
Свойства
----------------
.. table::
:widths: auto
+---------------------------------------+-----------------------------------------+-----------------------------------+
| :ref:`Transform2D<class_Transform2D>` | :ref:`rest<class_Bone2D_property_rest>` | ``Transform2D(0, 0, 0, 0, 0, 0)`` |
+---------------------------------------+-----------------------------------------+-----------------------------------+
.. rst-class:: classref-reftable-group
Методы
------------
.. table::
:widths: auto
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`apply_rest<class_Bone2D_method_apply_rest>`\ (\ ) |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`get_autocalculate_length_and_angle<class_Bone2D_method_get_autocalculate_length_and_angle>`\ (\ ) |const| |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_bone_angle<class_Bone2D_method_get_bone_angle>`\ (\ ) |const| |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`int<class_int>` | :ref:`get_index_in_skeleton<class_Bone2D_method_get_index_in_skeleton>`\ (\ ) |const| |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`get_length<class_Bone2D_method_get_length>`\ (\ ) |const| |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Transform2D<class_Transform2D>` | :ref:`get_skeleton_rest<class_Bone2D_method_get_skeleton_rest>`\ (\ ) |const| |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_autocalculate_length_and_angle<class_Bone2D_method_set_autocalculate_length_and_angle>`\ (\ auto_calculate\: :ref:`bool<class_bool>`\ ) |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_bone_angle<class_Bone2D_method_set_bone_angle>`\ (\ angle\: :ref:`float<class_float>`\ ) |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_length<class_Bone2D_method_set_length>`\ (\ length\: :ref:`float<class_float>`\ ) |
+---------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания свойств
--------------------------------
.. _class_Bone2D_property_rest:
.. rst-class:: classref-property
:ref:`Transform2D<class_Transform2D>` **rest** = ``Transform2D(0, 0, 0, 0, 0, 0)`` :ref:`🔗<class_Bone2D_property_rest>`
.. rst-class:: classref-property-setget
- |void| **set_rest**\ (\ value\: :ref:`Transform2D<class_Transform2D>`\ )
- :ref:`Transform2D<class_Transform2D>` **get_rest**\ (\ )
Остаточное преобразование кости. Вы можете сбросить преобразования узла на это значение, используя :ref:`apply_rest()<class_Bone2D_method_apply_rest>`.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания метода
------------------------------
.. _class_Bone2D_method_apply_rest:
.. rst-class:: classref-method
|void| **apply_rest**\ (\ ) :ref:`🔗<class_Bone2D_method_apply_rest>`
Сбрасывает кость в позу покоя. Это эквивалентно установке :ref:`Node2D.transform<class_Node2D_property_transform>` в :ref:`rest<class_Bone2D_property_rest>`.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_get_autocalculate_length_and_angle:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **get_autocalculate_length_and_angle**\ (\ ) |const| :ref:`🔗<class_Bone2D_method_get_autocalculate_length_and_angle>`
Возвращает, будет ли этот **Bone2D** автоматически вычислять свою длину и угол кости, используя свой первый дочерний узел **Bone2D**, если таковой существует. Если дочерних узлов **Bone2D** нет, то он не может автоматически вычислить эти значения и выведет предупреждение.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_get_bone_angle:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_bone_angle**\ (\ ) |const| :ref:`🔗<class_Bone2D_method_get_bone_angle>`
Возвращает угол кости в **Bone2D**.
\ **Примечание:** Это отличается от поворота **Bone2D**. Угол кости — это поворот кости, показанный гизмо (gizmo), на который не влияет :ref:`Node2D.transform<class_Node2D_property_transform>` **Bone2D**.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_get_index_in_skeleton:
.. rst-class:: classref-method
:ref:`int<class_int>` **get_index_in_skeleton**\ (\ ) |const| :ref:`🔗<class_Bone2D_method_get_index_in_skeleton>`
Возвращает индекс узла как часть всего скелета. См. :ref:`Skeleton2D<class_Skeleton2D>`.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_get_length:
.. rst-class:: classref-method
:ref:`float<class_float>` **get_length**\ (\ ) |const| :ref:`🔗<class_Bone2D_method_get_length>`
Возвращает длину кости в узле **Bone2D**.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_get_skeleton_rest:
.. rst-class:: classref-method
:ref:`Transform2D<class_Transform2D>` **get_skeleton_rest**\ (\ ) |const| :ref:`🔗<class_Bone2D_method_get_skeleton_rest>`
Возвращает :ref:`rest<class_Bone2D_property_rest>` :ref:`Transform2D<class_Transform2D>` узла, если у него нет родителя, или его позу покоя относительно родителя.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_set_autocalculate_length_and_angle:
.. rst-class:: classref-method
|void| **set_autocalculate_length_and_angle**\ (\ auto_calculate\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_Bone2D_method_set_autocalculate_length_and_angle>`
Если установлено значение ``true``, узел **Bone2D** попытается автоматически рассчитать угол и длину кости, используя первый дочерний узел **Bone2D**, если таковой существует. Если таковых нет, **Bone2D** не сможет автоматически рассчитать эти значения и выведет предупреждение.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_set_bone_angle:
.. rst-class:: classref-method
|void| **set_bone_angle**\ (\ angle\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Bone2D_method_set_bone_angle>`
Устанавливает угол кости для **Bone2D**. Обычно устанавливается на поворот от **Bone2D** к дочернему узлу **Bone2D**.
\ **Примечание:** Это отличается от поворота **Bone2D**. Угол кости — это поворот кости, показанный гизмо (gizmo), на который не влияет :ref:`Node2D.transform<class_Node2D_property_transform>` **Bone2D**.
.. rst-class:: classref-item-separator
----
.. _class_Bone2D_method_set_length:
.. rst-class:: classref-method
|void| **set_length**\ (\ length\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Bone2D_method_set_length>`
Устанавливает длину кости в **Bone2D**.
.. |virtual| replace:: :abbr:`virtual (Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-либо эффект.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-членов экземпляра.)`
.. |vararg| replace:: :abbr:`vararg (Этот метод принимает любое количество аргументов после описанных здесь.)`
.. |constructor| replace:: :abbr:`constructor (Этот метод используется для создания типа.)`
.. |static| replace:: :abbr:`static (Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать напрямую, используя имя класса.)`
.. |operator| replace:: :abbr:`operator (Этот метод описывает допустимый оператор для использования с этим типом в качестве левого операнда.)`
.. |bitfield| replace:: :abbr:`BitField (Это значение является целым числом, составленным как битовая маска следующих флагов.)`
.. |void| replace:: :abbr:`void (Нет возвращаемого значения.)`