class_navigationpathqueryparameters3d.rst 13 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286
  1. :github_url: hide
  2. .. DO NOT EDIT THIS FILE!!!
  3. .. Generated automatically from Godot engine sources.
  4. .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
  5. .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/NavigationPathQueryParameters3D.xml.
  6. .. _class_NavigationPathQueryParameters3D:
  7. NavigationPathQueryParameters3D
  8. ===============================
  9. **Experimental:** This class may be changed or removed in future versions.
  10. **Inherits:** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
  11. Provides parameters for 3D navigation path queries.
  12. .. rst-class:: classref-introduction-group
  13. Description
  14. -----------
  15. By changing various properties of this object, such as the start and target position, you can configure path queries to the :ref:`NavigationServer3D<class_NavigationServer3D>`.
  16. .. rst-class:: classref-introduction-group
  17. Tutorials
  18. ---------
  19. - :doc:`Using NavigationPathQueryObjects <../tutorials/navigation/navigation_using_navigationpathqueryobjects>`
  20. .. rst-class:: classref-reftable-group
  21. Properties
  22. ----------
  23. .. table::
  24. :widths: auto
  25. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  26. | :ref:`RID<class_RID>` | :ref:`map<class_NavigationPathQueryParameters3D_property_map>` | ``RID()`` |
  27. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  28. | |bitfield|\<:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>`\> | :ref:`metadata_flags<class_NavigationPathQueryParameters3D_property_metadata_flags>` | ``7`` |
  29. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  30. | :ref:`int<class_int>` | :ref:`navigation_layers<class_NavigationPathQueryParameters3D_property_navigation_layers>` | ``1`` |
  31. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  32. | :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` | :ref:`path_postprocessing<class_NavigationPathQueryParameters3D_property_path_postprocessing>` | ``0`` |
  33. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  34. | :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters3D_PathfindingAlgorithm>` | :ref:`pathfinding_algorithm<class_NavigationPathQueryParameters3D_property_pathfinding_algorithm>` | ``0`` |
  35. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  36. | :ref:`Vector3<class_Vector3>` | :ref:`start_position<class_NavigationPathQueryParameters3D_property_start_position>` | ``Vector3(0, 0, 0)`` |
  37. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  38. | :ref:`Vector3<class_Vector3>` | :ref:`target_position<class_NavigationPathQueryParameters3D_property_target_position>` | ``Vector3(0, 0, 0)`` |
  39. +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+----------------------+
  40. .. rst-class:: classref-section-separator
  41. ----
  42. .. rst-class:: classref-descriptions-group
  43. Enumerations
  44. ------------
  45. .. _enum_NavigationPathQueryParameters3D_PathfindingAlgorithm:
  46. .. rst-class:: classref-enumeration
  47. enum **PathfindingAlgorithm**:
  48. .. _class_NavigationPathQueryParameters3D_constant_PATHFINDING_ALGORITHM_ASTAR:
  49. .. rst-class:: classref-enumeration-constant
  50. :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters3D_PathfindingAlgorithm>` **PATHFINDING_ALGORITHM_ASTAR** = ``0``
  51. The path query uses the default A\* pathfinding algorithm.
  52. .. rst-class:: classref-item-separator
  53. ----
  54. .. _enum_NavigationPathQueryParameters3D_PathPostProcessing:
  55. .. rst-class:: classref-enumeration
  56. enum **PathPostProcessing**:
  57. .. _class_NavigationPathQueryParameters3D_constant_PATH_POSTPROCESSING_CORRIDORFUNNEL:
  58. .. rst-class:: classref-enumeration-constant
  59. :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` **PATH_POSTPROCESSING_CORRIDORFUNNEL** = ``0``
  60. Applies a funnel algorithm to the raw path corridor found by the pathfinding algorithm. This will result in the shortest path possible inside the path corridor. This postprocessing very much depends on the navigation mesh polygon layout and the created corridor. Especially tile- or gridbased layouts can face artificial corners with diagonal movement due to a jagged path corridor imposed by the cell shapes.
  61. .. _class_NavigationPathQueryParameters3D_constant_PATH_POSTPROCESSING_EDGECENTERED:
  62. .. rst-class:: classref-enumeration-constant
  63. :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` **PATH_POSTPROCESSING_EDGECENTERED** = ``1``
  64. Centers every path position in the middle of the traveled navigation mesh polygon edge. This creates better paths for tile- or gridbased layouts that restrict the movement to the cells center.
  65. .. rst-class:: classref-item-separator
  66. ----
  67. .. _enum_NavigationPathQueryParameters3D_PathMetadataFlags:
  68. .. rst-class:: classref-enumeration
  69. flags **PathMetadataFlags**:
  70. .. _class_NavigationPathQueryParameters3D_constant_PATH_METADATA_INCLUDE_NONE:
  71. .. rst-class:: classref-enumeration-constant
  72. :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_NONE** = ``0``
  73. Don't include any additional metadata about the returned path.
  74. .. _class_NavigationPathQueryParameters3D_constant_PATH_METADATA_INCLUDE_TYPES:
  75. .. rst-class:: classref-enumeration-constant
  76. :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_TYPES** = ``1``
  77. Include the type of navigation primitive (region or link) that each point of the path goes through.
  78. .. _class_NavigationPathQueryParameters3D_constant_PATH_METADATA_INCLUDE_RIDS:
  79. .. rst-class:: classref-enumeration-constant
  80. :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_RIDS** = ``2``
  81. Include the :ref:`RID<class_RID>`\ s of the regions and links that each point of the path goes through.
  82. .. _class_NavigationPathQueryParameters3D_constant_PATH_METADATA_INCLUDE_OWNERS:
  83. .. rst-class:: classref-enumeration-constant
  84. :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_OWNERS** = ``4``
  85. Include the ``ObjectID``\ s of the :ref:`Object<class_Object>`\ s which manage the regions and links each point of the path goes through.
  86. .. _class_NavigationPathQueryParameters3D_constant_PATH_METADATA_INCLUDE_ALL:
  87. .. rst-class:: classref-enumeration-constant
  88. :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_ALL** = ``7``
  89. Include all available metadata about the returned path.
  90. .. rst-class:: classref-section-separator
  91. ----
  92. .. rst-class:: classref-descriptions-group
  93. Property Descriptions
  94. ---------------------
  95. .. _class_NavigationPathQueryParameters3D_property_map:
  96. .. rst-class:: classref-property
  97. :ref:`RID<class_RID>` **map** = ``RID()``
  98. .. rst-class:: classref-property-setget
  99. - void **set_map** **(** :ref:`RID<class_RID>` value **)**
  100. - :ref:`RID<class_RID>` **get_map** **(** **)**
  101. The navigation map :ref:`RID<class_RID>` used in the path query.
  102. .. rst-class:: classref-item-separator
  103. ----
  104. .. _class_NavigationPathQueryParameters3D_property_metadata_flags:
  105. .. rst-class:: classref-property
  106. |bitfield|\<:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>`\> **metadata_flags** = ``7``
  107. .. rst-class:: classref-property-setget
  108. - void **set_metadata_flags** **(** |bitfield|\<:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>`\> value **)**
  109. - |bitfield|\<:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters3D_PathMetadataFlags>`\> **get_metadata_flags** **(** **)**
  110. Additional information to include with the navigation path.
  111. .. rst-class:: classref-item-separator
  112. ----
  113. .. _class_NavigationPathQueryParameters3D_property_navigation_layers:
  114. .. rst-class:: classref-property
  115. :ref:`int<class_int>` **navigation_layers** = ``1``
  116. .. rst-class:: classref-property-setget
  117. - void **set_navigation_layers** **(** :ref:`int<class_int>` value **)**
  118. - :ref:`int<class_int>` **get_navigation_layers** **(** **)**
  119. The navigation layers the query will use (as a bitmask).
  120. .. rst-class:: classref-item-separator
  121. ----
  122. .. _class_NavigationPathQueryParameters3D_property_path_postprocessing:
  123. .. rst-class:: classref-property
  124. :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` **path_postprocessing** = ``0``
  125. .. rst-class:: classref-property-setget
  126. - void **set_path_postprocessing** **(** :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` value **)**
  127. - :ref:`PathPostProcessing<enum_NavigationPathQueryParameters3D_PathPostProcessing>` **get_path_postprocessing** **(** **)**
  128. The path postprocessing applied to the raw path corridor found by the :ref:`pathfinding_algorithm<class_NavigationPathQueryParameters3D_property_pathfinding_algorithm>`.
  129. .. rst-class:: classref-item-separator
  130. ----
  131. .. _class_NavigationPathQueryParameters3D_property_pathfinding_algorithm:
  132. .. rst-class:: classref-property
  133. :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters3D_PathfindingAlgorithm>` **pathfinding_algorithm** = ``0``
  134. .. rst-class:: classref-property-setget
  135. - void **set_pathfinding_algorithm** **(** :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters3D_PathfindingAlgorithm>` value **)**
  136. - :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters3D_PathfindingAlgorithm>` **get_pathfinding_algorithm** **(** **)**
  137. The pathfinding algorithm used in the path query.
  138. .. rst-class:: classref-item-separator
  139. ----
  140. .. _class_NavigationPathQueryParameters3D_property_start_position:
  141. .. rst-class:: classref-property
  142. :ref:`Vector3<class_Vector3>` **start_position** = ``Vector3(0, 0, 0)``
  143. .. rst-class:: classref-property-setget
  144. - void **set_start_position** **(** :ref:`Vector3<class_Vector3>` value **)**
  145. - :ref:`Vector3<class_Vector3>` **get_start_position** **(** **)**
  146. The pathfinding start position in global coordinates.
  147. .. rst-class:: classref-item-separator
  148. ----
  149. .. _class_NavigationPathQueryParameters3D_property_target_position:
  150. .. rst-class:: classref-property
  151. :ref:`Vector3<class_Vector3>` **target_position** = ``Vector3(0, 0, 0)``
  152. .. rst-class:: classref-property-setget
  153. - void **set_target_position** **(** :ref:`Vector3<class_Vector3>` value **)**
  154. - :ref:`Vector3<class_Vector3>` **get_target_position** **(** **)**
  155. The pathfinding target position in global coordinates.
  156. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
  157. .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
  158. .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
  159. .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
  160. .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
  161. .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
  162. .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`