[This is preliminary documentation and is subject to change.]

Finds the non-overlapping navigation polygons in the local neighborhood around the specified point.

Namespace: org.critterai.nav
Assembly: cai-nav (in cai-nav.dll) Version: 0.4.0.0 (0.4.0.0)

Syntax

         
 C#  Visual Basic  Visual C++ 
public NavStatus GetPolysLocal(
	NavmeshPoint start,
	float radius,
	NavmeshQueryFilter filter,
	uint[] resultPolyRefs,
	uint[] resultParentRefs,
	out int resultCount
)
Public Function GetPolysLocal ( _
	start As NavmeshPoint, _
	radius As Single, _
	filter As NavmeshQueryFilter, _
	resultPolyRefs As UInteger(), _
	resultParentRefs As UInteger(), _
	<OutAttribute> ByRef resultCount As Integer _
) As NavStatus
public:
NavStatus GetPolysLocal(
	NavmeshPoint start, 
	float radius, 
	NavmeshQueryFilter^ filter, 
	array<unsigned int>^ resultPolyRefs, 
	array<unsigned int>^ resultParentRefs, 
	[OutAttribute] int% resultCount
)

Parameters

start
NavmeshPoint
The center point to start from which to start the search. (Must be valid.)
radius
Single
The radius of the search circle.
filter
NavmeshQueryFilter
The filter to apply to the query.
resultPolyRefs
array<UInt32>[]()[][]
The references of the polygons touched by the circle. [(polyRef) * resultCount] (Optional)
resultParentRefs
array<UInt32>[]()[][]
The references of the parent polygons for each result. Zero if a result polygon has no parent. [(parentRef) * resultCount] (Optional)
resultCount
Int32%
The number of polygons found.

Return Value

The NavStatus flags for the query.

Remarks

This method is optimized for a small query radius and small number of result polygons.

The order of the result is from least to highest cost.

At least one result buffer must be provided.

The primary use case for this method is for performing Dijkstra searches. Candidate polygons are found by searching the graph beginning at the start polygon.

The same intersection test restrictions that apply to the FindPoly methods apply to this method.

The value of the center point is used as the start point for cost calculations. It is not projected onto the surface of the mesh, so its y-value will effect the costs.

Intersection tests occur in 2D. All polygons and the search circle are projected onto the xz-plane, so the y-value of the center point does not effect intersection tests.

If the buffers are is too small to hold the entire result, they will be filled to capacity.

See Also