<?xml version="1.0" encoding="UTF-8" ?>
<class name="NavigationPathQueryResult2D" inherits="RefCounted" experimental="" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
	<brief_description>
		Represents the result of a 2D pathfinding query.
	</brief_description>
	<description>
		This class stores the result of a 2D navigation path query from the [NavigationServer2D].
	</description>
	<tutorials>
		<link title="Using NavigationPathQueryObjects">$DOCS_URL/tutorials/navigation/navigation_using_navigationpathqueryobjects.html</link>
	</tutorials>
	<methods>
		<method name="reset">
			<return type="void" />
			<description>
				Reset the result object to its initial state. This is useful to reuse the object across multiple queries.
			</description>
		</method>
	</methods>
	<members>
		<member name="path" type="PackedVector2Array" setter="set_path" getter="get_path" default="PackedVector2Array()">
			The resulting path array from the navigation query. All path array positions are in global coordinates. Without customized query parameters this is the same path as returned by [method NavigationServer2D.map_get_path].
		</member>
		<member name="path_length" type="float" setter="set_path_length" getter="get_path_length" default="0.0">
			Returns the length of the path.
		</member>
		<member name="path_owner_ids" type="PackedInt64Array" setter="set_path_owner_ids" getter="get_path_owner_ids" default="PackedInt64Array()">
			The [code]ObjectID[/code]s of the [Object]s which manage the regions and links each point of the path goes through.
		</member>
		<member name="path_rids" type="RID[]" setter="set_path_rids" getter="get_path_rids" default="[]">
			The [RID]s of the regions and links that each point of the path goes through.
		</member>
		<member name="path_types" type="PackedInt32Array" setter="set_path_types" getter="get_path_types" default="PackedInt32Array()">
			The type of navigation primitive (region or link) that each point of the path goes through.
		</member>
	</members>
	<constants>
		<constant name="PATH_SEGMENT_TYPE_REGION" value="0" enum="PathSegmentType">
			This segment of the path goes through a region.
		</constant>
		<constant name="PATH_SEGMENT_TYPE_LINK" value="1" enum="PathSegmentType">
			This segment of the path goes through a link.
		</constant>
	</constants>
</class>
