A* Pathfinding Project  4.3.2
The A* Pathfinding Project for Unity 3D
RVOQuadtreeBurst Struct Reference

Quadtree for quick nearest neighbour search of rvo agents. More...

Detailed Description

Quadtree for quick nearest neighbour search of rvo agents.

See also
Pathfinding.RVO.Simulator

Classes

struct  JobBuild
 
struct  QuadtreeQuery
 

Public Member Functions

JobBuild BuildJob (NativeArray< float2 > agentPositions, NativeArray< float > agentSpeeds, NativeArray< float > agentRadii, int numAgents)
 
void DebugDraw ()
 
void DebugDraw (int nodeIndex, float2 nodeMin, float2 nodeMax)
 
void Dispose ()
 
float QueryArea (float2 position, float radius)
 Find the total agent area inside the circle at position with the given radius. More...
 
float QueryAreaRec (int treeNodeIndex, float2 p, float radius, float2 nodeMin, float2 nodeMax)
 
void QueryKNearest (QuadtreeQuery query, NativeArray< int > result, NativeArray< float > resultDistances)
 
void QueryRec (ref QuadtreeQuery query, int treeNodeIndex, float2 nodeMin, float2 nodeMax, NativeArray< int > result, NativeArray< float > resultDistances, ref float maxRadius)
 
void Reserve (int minSize)
 

Static Public Member Functions

static int InnerNodeCountUpperBound (int numAgents)
 

Public Attributes

NativeArray< float2 > agentPositions
 
NativeArray< float > agentRadii
 
NativeArray< int > agents
 
const int BitPackingMask = (1 << BitPackingShift) - 1
 
const int BitPackingShift = 15
 
NativeArray< float2 > boundingBoxBuffer
 
NativeArray< int > childPointers
 
const int LeafNodeBit = 1 << 30
 
const int LeafSize = 16
 
const int MaxAgents = BitPackingMask
 
const int MaxDepth = 10
 
NativeArray< float > maxRadius
 
NativeArray< float > maxSpeeds
 
NativeArray< float > nodeAreas
 
int numAgents
 

Properties

Rect bounds [get]
 

Member Function Documentation

◆ BuildJob()

JobBuild BuildJob ( NativeArray< float2 >  agentPositions,
NativeArray< float >  agentSpeeds,
NativeArray< float >  agentRadii,
int  numAgents 
)

◆ DebugDraw() [1/2]

void DebugDraw ( )

◆ DebugDraw() [2/2]

void DebugDraw ( int  nodeIndex,
float2  nodeMin,
float2  nodeMax 
)

◆ Dispose()

void Dispose ( )

◆ InnerNodeCountUpperBound()

static int InnerNodeCountUpperBound ( int  numAgents)
static

◆ QueryArea()

float QueryArea ( float2  position,
float  radius 
)

Find the total agent area inside the circle at position with the given radius.

◆ QueryAreaRec()

float QueryAreaRec ( int  treeNodeIndex,
float2  p,
float  radius,
float2  nodeMin,
float2  nodeMax 
)

◆ QueryKNearest()

void QueryKNearest ( QuadtreeQuery  query,
NativeArray< int >  result,
NativeArray< float >  resultDistances 
)

◆ QueryRec()

void QueryRec ( ref QuadtreeQuery  query,
int  treeNodeIndex,
float2  nodeMin,
float2  nodeMax,
NativeArray< int >  result,
NativeArray< float >  resultDistances,
ref float  maxRadius 
)

◆ Reserve()

void Reserve ( int  minSize)

Member Data Documentation

◆ agentPositions

NativeArray<float2> agentPositions

◆ agentRadii

NativeArray<float> agentRadii

◆ agents

NativeArray<int> agents

◆ BitPackingMask

const int BitPackingMask = (1 << BitPackingShift) - 1

◆ BitPackingShift

const int BitPackingShift = 15

◆ boundingBoxBuffer

NativeArray<float2> boundingBoxBuffer

◆ childPointers

NativeArray<int> childPointers

◆ LeafNodeBit

const int LeafNodeBit = 1 << 30

◆ LeafSize

const int LeafSize = 16

◆ MaxAgents

const int MaxAgents = BitPackingMask

◆ MaxDepth

const int MaxDepth = 10

◆ maxRadius

NativeArray<float> maxRadius

◆ maxSpeeds

NativeArray<float> maxSpeeds

◆ nodeAreas

NativeArray<float> nodeAreas

◆ numAgents

int numAgents

Property Documentation

◆ bounds

Rect bounds
get

The documentation for this struct was generated from the following file: