A* Pathfinding Project
3.6
The A* Pathfinding Project for Unity 3D
|
Node represented by a triangle. More...
Node represented by a triangle.
Public Member Functions | |
TriangleMeshNode (AstarPath astar) | |
override Vector3 | ClosestPointOnNode (Vector3 p) |
override Vector3 | ClosestPointOnNodeXZ (Vector3 _p) |
override bool | ContainsPoint (Int3 p) |
Checks if p is inside the node. | |
override void | DeserializeNode (GraphSerializationContext ctx) |
override bool | GetPortal (GraphNode _other, System.Collections.Generic.List< Vector3 > left, System.Collections.Generic.List< Vector3 > right, bool backwards) |
bool | GetPortal (GraphNode _other, System.Collections.Generic.List< Vector3 > left, System.Collections.Generic.List< Vector3 > right, bool backwards, out int aIndex, out int bIndex) |
override Int3 | GetVertex (int i) |
int | GetVertexArrayIndex (int i) |
Return a number specifying an index in the source vertex array. | |
override int | GetVertexCount () |
int | GetVertexIndex (int i) |
Return a number identifying a vertex. | |
override void | Open (Path path, PathNode pathNode, PathHandler handler) |
Open the node. | |
override void | SerializeNode (GraphSerializationContext ctx) |
int | SharedEdge (GraphNode other) |
Returns the edge which is shared with other. | |
void | UpdatePositionFromVertices () |
override void | UpdateRecursiveG (Path path, PathNode pathNode, PathHandler handler) |
Public Member Functions inherited from MeshNode | |
MeshNode (AstarPath astar) | |
override void | AddConnection (GraphNode node, uint cost) |
Add a connection from this node to the specified node. | |
override void | ClearConnections (bool alsoReverse) |
Remove all connections from this node. | |
override bool | ContainsConnection (GraphNode node) |
Checks if this node has a connection to the specified node. | |
override void | DeserializeReferences (GraphSerializationContext ctx) |
Used to deserialize references to other nodes e.g connections. | |
override void | FloodFill (Stack< GraphNode > stack, uint region) |
override void | GetConnections (GraphNodeDelegate del) |
Calls the delegate with all connections from this node. | |
override void | RemoveConnection (GraphNode node) |
Removes any connection from this node to the specified node. | |
override void | SerializeReferences (GraphSerializationContext ctx) |
Used to serialize references to other nodes e.g connections. | |
Public Member Functions inherited from GraphNode | |
GraphNode (AstarPath astar) | |
Constructor for a graph node. | |
void | Destroy () |
Destroys the node. | |
virtual bool | GetPortal (GraphNode other, List< Vector3 > left, List< Vector3 > right, bool backwards) |
Add a portal from this node to the specified node. | |
virtual void | RecalculateConnectionCosts () |
Recalculates all connection costs from this node. | |
void | UpdateG (Path path, PathNode pathNode) |
Static Public Member Functions | |
static INavmeshHolder | GetNavmeshHolder (uint graphIndex) |
static void | SetNavmeshHolder (int graphIndex, INavmeshHolder graph) |
Public Attributes | |
int | v0 |
Public Attributes inherited from MeshNode | |
uint[] | connectionCosts |
GraphNode[] | connections |
Public Attributes inherited from GraphNode | |
const uint | MaxAreaIndex = FlagsAreaMask >> FlagsAreaOffset |
const uint | MaxGraphIndex = FlagsGraphMask >> FlagsGraphOffset |
Max number of graphs-1. | |
Int3 | position |
Static Protected Attributes | |
static INavmeshHolder[] | _navmeshHolders = new INavmeshHolder[0] |
Private Attributes | |
int | v1 |
int | v2 |
Additional Inherited Members | |
Protected Attributes inherited from GraphNode | |
uint | flags |
Properties inherited from GraphNode | |
uint | Area [get, set] |
bool | Destroyed [get] |
uint | Flags [get, set] |
Holds various bitpacked variables. | |
uint | graphIndex [get, set] |
uint | GraphIndex [get, set] |
int | NodeIndex [get] |
uint | Penalty [get, set] |
Penalty cost for walking on this node. | |
Int3 | Position [get] |
uint | Tag [get, set] |
uint | tags [get, set] |
bool | walkable [get, set] |
bool | Walkable [get, set] |
True if the node is traversable. | |
TriangleMeshNode | ( | AstarPath | astar | ) |
|
virtual |
Implements MeshNode.
|
virtual |
Implements MeshNode.
|
virtual |
Checks if p is inside the node.
The default implementation uses XZ space and is in large part got from the website linked below
Reimplemented from MeshNode.
|
virtual |
Reimplemented from GraphNode.
|
static |
override bool GetPortal | ( | GraphNode | _other, |
System.Collections.Generic.List< Vector3 > | left, | ||
System.Collections.Generic.List< Vector3 > | right, | ||
bool | backwards | ||
) |
bool GetPortal | ( | GraphNode | _other, |
System.Collections.Generic.List< Vector3 > | left, | ||
System.Collections.Generic.List< Vector3 > | right, | ||
bool | backwards, | ||
out int | aIndex, | ||
out int | bIndex | ||
) |
int GetVertexArrayIndex | ( | int | i | ) |
Return a number specifying an index in the source vertex array.
The vertex array can for example be contained in a recast tile, or be a navmesh graph, that is graph dependant. This is slower than GetVertexIndex, if you only need to compare vertices, use GetVertexIndex.
|
virtual |
Implements MeshNode.
int GetVertexIndex | ( | int | i | ) |
Return a number identifying a vertex.
This number does not necessarily need to be a index in an array but two different vertices (in the same graph) should not have the same vertex numbers.
|
virtual |
Open the node.
Implements GraphNode.
|
virtual |
Reimplemented from GraphNode.
|
static |
int SharedEdge | ( | GraphNode | other | ) |
Returns the edge which is shared with other.
If no edge is shared, -1 is returned. The edge is GetVertex(result) - GetVertex((result+1) % GetVertexCount()). See GetPortal for the exact segment shared.
void UpdatePositionFromVertices | ( | ) |
|
virtual |
Reimplemented from MeshNode.
|
staticprotected |
int v0 |
|
private |
|
private |