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

334 lines
19 KiB
ReStructuredText
Raw 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_NavigationLink3D:
NavigationLink3D
================
**Экспериментальное:** This class may be changed or removed in future versions.
**Наследует:** :ref:`Node3D<class_Node3D>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
Связь между двумя позициями в :ref:`NavigationRegion3D<class_NavigationRegion3D>`, через которую могут маршрутизироваться агенты.
.. rst-class:: classref-introduction-group
Описание
----------------
Связь между двумя позициями на :ref:`NavigationRegion3D<class_NavigationRegion3D>`, через которые могут быть направлены агенты. Эти позиции могут быть на одном и том же :ref:`NavigationRegion3D<class_NavigationRegion3D>` или на двух разных. Связи полезны для выражения методов навигации, отличных от перемещения по поверхности навигационной сетки, таких как зиплайны, телепорты или разрывы, через которые можно перепрыгивать.
.. rst-class:: classref-introduction-group
Обучающие материалы
--------------------------------------
- :doc:`Использование NavigationLinks <../tutorials/navigation/navigation_using_navigationlinks>`
.. rst-class:: classref-reftable-group
Свойства
----------------
.. table::
:widths: auto
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`bool<class_bool>` | :ref:`bidirectional<class_NavigationLink3D_property_bidirectional>` | ``true`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`bool<class_bool>` | :ref:`enabled<class_NavigationLink3D_property_enabled>` | ``true`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`end_position<class_NavigationLink3D_property_end_position>` | ``Vector3(0, 0, 0)`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`float<class_float>` | :ref:`enter_cost<class_NavigationLink3D_property_enter_cost>` | ``0.0`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`int<class_int>` | :ref:`navigation_layers<class_NavigationLink3D_property_navigation_layers>` | ``1`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`start_position<class_NavigationLink3D_property_start_position>` | ``Vector3(0, 0, 0)`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
| :ref:`float<class_float>` | :ref:`travel_cost<class_NavigationLink3D_property_travel_cost>` | ``1.0`` |
+-------------------------------+-----------------------------------------------------------------------------+----------------------+
.. rst-class:: classref-reftable-group
Методы
------------
.. table::
:widths: auto
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`get_global_end_position<class_NavigationLink3D_method_get_global_end_position>`\ (\ ) |const| |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Vector3<class_Vector3>` | :ref:`get_global_start_position<class_NavigationLink3D_method_get_global_start_position>`\ (\ ) |const| |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`get_navigation_layer_value<class_NavigationLink3D_method_get_navigation_layer_value>`\ (\ layer_number\: :ref:`int<class_int>`\ ) |const| |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`RID<class_RID>` | :ref:`get_navigation_map<class_NavigationLink3D_method_get_navigation_map>`\ (\ ) |const| |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`RID<class_RID>` | :ref:`get_rid<class_NavigationLink3D_method_get_rid>`\ (\ ) |const| |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_global_end_position<class_NavigationLink3D_method_set_global_end_position>`\ (\ position\: :ref:`Vector3<class_Vector3>`\ ) |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_global_start_position<class_NavigationLink3D_method_set_global_start_position>`\ (\ position\: :ref:`Vector3<class_Vector3>`\ ) |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_navigation_layer_value<class_NavigationLink3D_method_set_navigation_layer_value>`\ (\ layer_number\: :ref:`int<class_int>`, value\: :ref:`bool<class_bool>`\ ) |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_navigation_map<class_NavigationLink3D_method_set_navigation_map>`\ (\ navigation_map\: :ref:`RID<class_RID>`\ ) |
+-------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания свойств
--------------------------------
.. _class_NavigationLink3D_property_bidirectional:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **bidirectional** = ``true`` :ref:`🔗<class_NavigationLink3D_property_bidirectional>`
.. rst-class:: classref-property-setget
- |void| **set_bidirectional**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_bidirectional**\ (\ )
Можно ли перемещаться по этой ссылке в обоих направлениях или только от :ref:`start_position<class_NavigationLink3D_property_start_position>` до :ref:`end_position<class_NavigationLink3D_property_end_position>`.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_enabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **enabled** = ``true`` :ref:`🔗<class_NavigationLink3D_property_enabled>`
.. rst-class:: classref-property-setget
- |void| **set_enabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_enabled**\ (\ )
Активна ли эта ссылка в данный момент. Если ``false``, :ref:`NavigationServer3D.map_get_path()<class_NavigationServer3D_method_map_get_path>` проигнорирует эту ссылку.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_end_position:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **end_position** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_NavigationLink3D_property_end_position>`
.. rst-class:: classref-property-setget
- |void| **set_end_position**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_end_position**\ (\ )
Конечная позиция ссылки.
Эта позиция будет искать ближайший полигон в навигационной сетке для присоединения.
Расстояние, на котором будет искать ссылка, контролируется :ref:`NavigationServer3D.map_set_link_connection_radius()<class_NavigationServer3D_method_map_set_link_connection_radius>`.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_enter_cost:
.. rst-class:: classref-property
:ref:`float<class_float>` **enter_cost** = ``0.0`` :ref:`🔗<class_NavigationLink3D_property_enter_cost>`
.. rst-class:: classref-property-setget
- |void| **set_enter_cost**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_enter_cost**\ (\ )
Когда поиск пути заходит на эту ссылку из навигационной сетки другого региона, значение :ref:`enter_cost<class_NavigationLink3D_property_enter_cost>` добавляется к расстоянию пути для определения кратчайшего пути.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_navigation_layers:
.. rst-class:: classref-property
:ref:`int<class_int>` **navigation_layers** = ``1`` :ref:`🔗<class_NavigationLink3D_property_navigation_layers>`
.. rst-class:: classref-property-setget
- |void| **set_navigation_layers**\ (\ value\: :ref:`int<class_int>`\ )
- :ref:`int<class_int>` **get_navigation_layers**\ (\ )
Битовое поле, определяющее все навигационные слои, к которым принадлежит ссылка. Эти навигационные слои будут проверяться при запросе пути с помощью :ref:`NavigationServer3D.map_get_path()<class_NavigationServer3D_method_map_get_path>`.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_start_position:
.. rst-class:: classref-property
:ref:`Vector3<class_Vector3>` **start_position** = ``Vector3(0, 0, 0)`` :ref:`🔗<class_NavigationLink3D_property_start_position>`
.. rst-class:: classref-property-setget
- |void| **set_start_position**\ (\ value\: :ref:`Vector3<class_Vector3>`\ )
- :ref:`Vector3<class_Vector3>` **get_start_position**\ (\ )
Начальная позиция ссылки.
Эта позиция будет искать ближайший полигон в навигационной сетке для присоединения.
Расстояние, на котором будет искать ссылка, контролируется :ref:`NavigationServer3D.map_set_link_connection_radius()<class_NavigationServer3D_method_map_set_link_connection_radius>`.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_property_travel_cost:
.. rst-class:: classref-property
:ref:`float<class_float>` **travel_cost** = ``1.0`` :ref:`🔗<class_NavigationLink3D_property_travel_cost>`
.. rst-class:: classref-property-setget
- |void| **set_travel_cost**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_travel_cost**\ (\ )
При поиске пути по ссылке пройденное расстояние умножается на :ref:`travel_cost<class_NavigationLink3D_property_travel_cost>` для определения кратчайшего пути.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания метода
------------------------------
.. _class_NavigationLink3D_method_get_global_end_position:
.. rst-class:: classref-method
:ref:`Vector3<class_Vector3>` **get_global_end_position**\ (\ ) |const| :ref:`🔗<class_NavigationLink3D_method_get_global_end_position>`
Возвращает :ref:`end_position<class_NavigationLink3D_property_end_position>`, который относится к ссылке как к глобальной позиции.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_get_global_start_position:
.. rst-class:: classref-method
:ref:`Vector3<class_Vector3>` **get_global_start_position**\ (\ ) |const| :ref:`🔗<class_NavigationLink3D_method_get_global_start_position>`
Возвращает :ref:`start_position<class_NavigationLink3D_property_start_position>`, которая относится к ссылке как к глобальной позиции.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_get_navigation_layer_value:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **get_navigation_layer_value**\ (\ layer_number\: :ref:`int<class_int>`\ ) |const| :ref:`🔗<class_NavigationLink3D_method_get_navigation_layer_value>`
Возвращает, включен ли указанный слой битовой маски :ref:`navigation_layers<class_NavigationLink3D_property_navigation_layers>`, учитывая ``layer_number`` от 1 до 32.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_get_navigation_map:
.. rst-class:: classref-method
:ref:`RID<class_RID>` **get_navigation_map**\ (\ ) |const| :ref:`🔗<class_NavigationLink3D_method_get_navigation_map>`
Возвращает текущую навигационную карту :ref:`RID<class_RID>`, используемую этой ссылкой.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_get_rid:
.. rst-class:: classref-method
:ref:`RID<class_RID>` **get_rid**\ (\ ) |const| :ref:`🔗<class_NavigationLink3D_method_get_rid>`
Возвращает :ref:`RID<class_RID>` этой ссылки на :ref:`NavigationServer3D<class_NavigationServer3D>`.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_set_global_end_position:
.. rst-class:: classref-method
|void| **set_global_end_position**\ (\ position\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_NavigationLink3D_method_set_global_end_position>`
Устанавливает :ref:`end_position<class_NavigationLink3D_property_end_position>` относительно ссылки из глобального ``position``.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_set_global_start_position:
.. rst-class:: classref-method
|void| **set_global_start_position**\ (\ position\: :ref:`Vector3<class_Vector3>`\ ) :ref:`🔗<class_NavigationLink3D_method_set_global_start_position>`
Устанавливает :ref:`start_position<class_NavigationLink3D_property_start_position>` относительно ссылки из глобальной ``position``.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_set_navigation_layer_value:
.. rst-class:: classref-method
|void| **set_navigation_layer_value**\ (\ layer_number\: :ref:`int<class_int>`, value\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_NavigationLink3D_method_set_navigation_layer_value>`
На основе ``value`` включает или отключает указанный слой в битовой маске :ref:`navigation_layers<class_NavigationLink3D_property_navigation_layers>`, учитывая ``layer_number`` от 1 до 32.
.. rst-class:: classref-item-separator
----
.. _class_NavigationLink3D_method_set_navigation_map:
.. rst-class:: classref-method
|void| **set_navigation_map**\ (\ navigation_map\: :ref:`RID<class_RID>`\ ) :ref:`🔗<class_NavigationLink3D_method_set_navigation_map>`
Устанавливает :ref:`RID<class_RID>` навигационной карты, которую должна использовать эта ссылка. По умолчанию ссылка автоматически присоединится к навигационной карте по умолчанию :ref:`World3D<class_World3D>`, поэтому эта функция требуется только для переопределения карты по умолчанию.
.. |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 (Нет возвращаемого значения.)`