123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328 |
- :github_url: hide
- .. DO NOT EDIT THIS FILE!!!
- .. Generated automatically from Godot engine sources.
- .. Generator: https://github.com/godotengine/godot/tree/master/doc/tools/make_rst.py.
- .. XML source: https://github.com/godotengine/godot/tree/master/doc/classes/NavigationPathQueryParameters2D.xml.
- .. _class_NavigationPathQueryParameters2D:
- NavigationPathQueryParameters2D
- ===============================
- **Experimental:** This class may be changed or removed in future versions.
- **Inherits:** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
- Provides parameters for 2D navigation path queries.
- .. rst-class:: classref-introduction-group
- Description
- -----------
- By changing various properties of this object, such as the start and target position, you can configure path queries to the :ref:`NavigationServer2D<class_NavigationServer2D>`.
- .. rst-class:: classref-introduction-group
- Tutorials
- ---------
- - :doc:`Using NavigationPathQueryObjects <../tutorials/navigation/navigation_using_navigationpathqueryobjects>`
- .. rst-class:: classref-reftable-group
- Properties
- ----------
- .. table::
- :widths: auto
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`RID<class_RID>` | :ref:`map<class_NavigationPathQueryParameters2D_property_map>` | ``RID()`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | |bitfield|\[:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>`\] | :ref:`metadata_flags<class_NavigationPathQueryParameters2D_property_metadata_flags>` | ``7`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`int<class_int>` | :ref:`navigation_layers<class_NavigationPathQueryParameters2D_property_navigation_layers>` | ``1`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>` | :ref:`path_postprocessing<class_NavigationPathQueryParameters2D_property_path_postprocessing>` | ``0`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>` | :ref:`pathfinding_algorithm<class_NavigationPathQueryParameters2D_property_pathfinding_algorithm>` | ``0`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`float<class_float>` | :ref:`simplify_epsilon<class_NavigationPathQueryParameters2D_property_simplify_epsilon>` | ``0.0`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`bool<class_bool>` | :ref:`simplify_path<class_NavigationPathQueryParameters2D_property_simplify_path>` | ``false`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Vector2<class_Vector2>` | :ref:`start_position<class_NavigationPathQueryParameters2D_property_start_position>` | ``Vector2(0, 0)`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- | :ref:`Vector2<class_Vector2>` | :ref:`target_position<class_NavigationPathQueryParameters2D_property_target_position>` | ``Vector2(0, 0)`` |
- +------------------------------------------------------------------------------------------------+----------------------------------------------------------------------------------------------------+-------------------+
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Enumerations
- ------------
- .. _enum_NavigationPathQueryParameters2D_PathfindingAlgorithm:
- .. rst-class:: classref-enumeration
- enum **PathfindingAlgorithm**: :ref:`🔗<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>`
- .. _class_NavigationPathQueryParameters2D_constant_PATHFINDING_ALGORITHM_ASTAR:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>` **PATHFINDING_ALGORITHM_ASTAR** = ``0``
- The path query uses the default A\* pathfinding algorithm.
- .. rst-class:: classref-item-separator
- ----
- .. _enum_NavigationPathQueryParameters2D_PathPostProcessing:
- .. rst-class:: classref-enumeration
- enum **PathPostProcessing**: :ref:`🔗<enum_NavigationPathQueryParameters2D_PathPostProcessing>`
- .. _class_NavigationPathQueryParameters2D_constant_PATH_POSTPROCESSING_CORRIDORFUNNEL:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>` **PATH_POSTPROCESSING_CORRIDORFUNNEL** = ``0``
- 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.
- .. _class_NavigationPathQueryParameters2D_constant_PATH_POSTPROCESSING_EDGECENTERED:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>` **PATH_POSTPROCESSING_EDGECENTERED** = ``1``
- 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.
- .. rst-class:: classref-item-separator
- ----
- .. _enum_NavigationPathQueryParameters2D_PathMetadataFlags:
- .. rst-class:: classref-enumeration
- flags **PathMetadataFlags**: :ref:`🔗<enum_NavigationPathQueryParameters2D_PathMetadataFlags>`
- .. _class_NavigationPathQueryParameters2D_constant_PATH_METADATA_INCLUDE_NONE:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_NONE** = ``0``
- Don't include any additional metadata about the returned path.
- .. _class_NavigationPathQueryParameters2D_constant_PATH_METADATA_INCLUDE_TYPES:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_TYPES** = ``1``
- Include the type of navigation primitive (region or link) that each point of the path goes through.
- .. _class_NavigationPathQueryParameters2D_constant_PATH_METADATA_INCLUDE_RIDS:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_RIDS** = ``2``
- Include the :ref:`RID<class_RID>`\ s of the regions and links that each point of the path goes through.
- .. _class_NavigationPathQueryParameters2D_constant_PATH_METADATA_INCLUDE_OWNERS:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_OWNERS** = ``4``
- Include the ``ObjectID``\ s of the :ref:`Object<class_Object>`\ s which manage the regions and links each point of the path goes through.
- .. _class_NavigationPathQueryParameters2D_constant_PATH_METADATA_INCLUDE_ALL:
- .. rst-class:: classref-enumeration-constant
- :ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>` **PATH_METADATA_INCLUDE_ALL** = ``7``
- Include all available metadata about the returned path.
- .. rst-class:: classref-section-separator
- ----
- .. rst-class:: classref-descriptions-group
- Property Descriptions
- ---------------------
- .. _class_NavigationPathQueryParameters2D_property_map:
- .. rst-class:: classref-property
- :ref:`RID<class_RID>` **map** = ``RID()`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_map>`
- .. rst-class:: classref-property-setget
- - |void| **set_map**\ (\ value\: :ref:`RID<class_RID>`\ )
- - :ref:`RID<class_RID>` **get_map**\ (\ )
- The navigation map :ref:`RID<class_RID>` used in the path query.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_metadata_flags:
- .. rst-class:: classref-property
- |bitfield|\[:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>`\] **metadata_flags** = ``7`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_metadata_flags>`
- .. rst-class:: classref-property-setget
- - |void| **set_metadata_flags**\ (\ value\: |bitfield|\[:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>`\]\ )
- - |bitfield|\[:ref:`PathMetadataFlags<enum_NavigationPathQueryParameters2D_PathMetadataFlags>`\] **get_metadata_flags**\ (\ )
- Additional information to include with the navigation path.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_navigation_layers:
- .. rst-class:: classref-property
- :ref:`int<class_int>` **navigation_layers** = ``1`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_navigation_layers>`
- .. rst-class:: classref-property-setget
- - |void| **set_navigation_layers**\ (\ value\: :ref:`int<class_int>`\ )
- - :ref:`int<class_int>` **get_navigation_layers**\ (\ )
- The navigation layers the query will use (as a bitmask).
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_path_postprocessing:
- .. rst-class:: classref-property
- :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>` **path_postprocessing** = ``0`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_path_postprocessing>`
- .. rst-class:: classref-property-setget
- - |void| **set_path_postprocessing**\ (\ value\: :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>`\ )
- - :ref:`PathPostProcessing<enum_NavigationPathQueryParameters2D_PathPostProcessing>` **get_path_postprocessing**\ (\ )
- The path postprocessing applied to the raw path corridor found by the :ref:`pathfinding_algorithm<class_NavigationPathQueryParameters2D_property_pathfinding_algorithm>`.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_pathfinding_algorithm:
- .. rst-class:: classref-property
- :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>` **pathfinding_algorithm** = ``0`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_pathfinding_algorithm>`
- .. rst-class:: classref-property-setget
- - |void| **set_pathfinding_algorithm**\ (\ value\: :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>`\ )
- - :ref:`PathfindingAlgorithm<enum_NavigationPathQueryParameters2D_PathfindingAlgorithm>` **get_pathfinding_algorithm**\ (\ )
- The pathfinding algorithm used in the path query.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_simplify_epsilon:
- .. rst-class:: classref-property
- :ref:`float<class_float>` **simplify_epsilon** = ``0.0`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_simplify_epsilon>`
- .. rst-class:: classref-property-setget
- - |void| **set_simplify_epsilon**\ (\ value\: :ref:`float<class_float>`\ )
- - :ref:`float<class_float>` **get_simplify_epsilon**\ (\ )
- The path simplification amount in worlds units.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_simplify_path:
- .. rst-class:: classref-property
- :ref:`bool<class_bool>` **simplify_path** = ``false`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_simplify_path>`
- .. rst-class:: classref-property-setget
- - |void| **set_simplify_path**\ (\ value\: :ref:`bool<class_bool>`\ )
- - :ref:`bool<class_bool>` **get_simplify_path**\ (\ )
- If ``true`` a simplified version of the path will be returned with less critical path points removed. The simplification amount is controlled by :ref:`simplify_epsilon<class_NavigationPathQueryParameters2D_property_simplify_epsilon>`. The simplification uses a variant of Ramer-Douglas-Peucker algorithm for curve point decimation.
- Path simplification can be helpful to mitigate various path following issues that can arise with certain agent types and script behaviors. E.g. "steering" agents or avoidance in "open fields".
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_start_position:
- .. rst-class:: classref-property
- :ref:`Vector2<class_Vector2>` **start_position** = ``Vector2(0, 0)`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_start_position>`
- .. rst-class:: classref-property-setget
- - |void| **set_start_position**\ (\ value\: :ref:`Vector2<class_Vector2>`\ )
- - :ref:`Vector2<class_Vector2>` **get_start_position**\ (\ )
- The pathfinding start position in global coordinates.
- .. rst-class:: classref-item-separator
- ----
- .. _class_NavigationPathQueryParameters2D_property_target_position:
- .. rst-class:: classref-property
- :ref:`Vector2<class_Vector2>` **target_position** = ``Vector2(0, 0)`` :ref:`🔗<class_NavigationPathQueryParameters2D_property_target_position>`
- .. rst-class:: classref-property-setget
- - |void| **set_target_position**\ (\ value\: :ref:`Vector2<class_Vector2>`\ )
- - :ref:`Vector2<class_Vector2>` **get_target_position**\ (\ )
- The pathfinding target position in global coordinates.
- .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)`
- .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)`
- .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)`
- .. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)`
- .. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)`
- .. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)`
- .. |bitfield| replace:: :abbr:`BitField (This value is an integer composed as a bitmask of the following flags.)`
- .. |void| replace:: :abbr:`void (No return value.)`
|