A* Pathfinding Project
4.1.4
The A* Pathfinding Project for Unity 3D
|
Public Member Functions | |
NodeLink3Node (AstarPath active) | |
GraphNode | GetOther (GraphNode a) |
override bool | GetPortal (GraphNode other, List< Vector3 > left, List< Vector3 > right, bool backwards) |
Add a portal from this node to the specified node. | |
Public Member Functions inherited from PointNode | |
PointNode (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 | DeserializeNode (GraphSerializationContext ctx) |
override void | DeserializeReferences (GraphSerializationContext ctx) |
Used to deserialize references to other nodes e.g connections. | |
override void | GetConnections (System.Action< GraphNode > action) |
Calls the delegate with all connections from this node. | |
override int | GetGizmoHashCode () |
Hash code used for checking if the gizmos need to be updated. | |
override void | Open (Path path, PathNode pathNode, PathHandler handler) |
Open the node. | |
override void | RemoveConnection (GraphNode node) |
Removes any connection from this node to the specified node. | |
override void | SerializeNode (GraphSerializationContext ctx) |
override void | SerializeReferences (GraphSerializationContext ctx) |
Used to serialize references to other nodes e.g connections. | |
void | SetPosition (Int3 value) |
override void | UpdateRecursiveG (Path path, PathNode pathNode, PathHandler handler) |
Public Member Functions inherited from GraphNode | |
virtual void | FloodFill (Stack< GraphNode > stack, uint region) |
virtual Vector3 | RandomPointOnSurface () |
A random point on the surface of the node. | |
virtual void | RecalculateConnectionCosts () |
Recalculates all connection costs from this node. | |
virtual float | SurfaceArea () |
The surface area of the node in square world units. | |
Public Attributes | |
NodeLink3 | link |
Vector3 | portalA |
Vector3 | portalB |
Public Attributes inherited from PointNode | |
Connection[] | connections |
GameObject | gameObject |
GameObject this node was created from (if any). | |
Public Attributes inherited from GraphNode | |
const uint | MaxAreaIndex = FlagsAreaMask >> FlagsAreaOffset |
const uint | MaxGraphIndex = FlagsGraphMask >> FlagsGraphOffset |
Max number of graphs-1. | |
Int3 | position |
Position of the node in world space. | |
Private Member Functions | |
GraphNode | GetOtherInternal (GraphNode a) |
Additional Inherited Members | |
Protected Member Functions inherited from GraphNode | |
GraphNode (AstarPath astar) | |
Constructor for a graph node. | |
Protected Attributes inherited from GraphNode | |
uint | flags |
Bitpacked field holding several pieces of data. | |
Package Functions inherited from GraphNode | |
void | Destroy () |
Destroys the node. | |
Properties inherited from GraphNode | |
uint | Area [get, set] |
Connected component that contains the node. | |
bool | Destroyed [get] |
uint | Flags [get, set] |
Holds various bitpacked variables. | |
uint | GraphIndex [get, set] |
Graph which contains this node. | |
int | NodeIndex [get] |
Internal unique index. | |
uint | Penalty [get, set] |
Penalty cost for walking on this node. | |
uint | Tag [get, set] |
Node tag. | |
bool | Walkable [get, set] |
True if the node is traversable. | |
NodeLink3Node | ( | AstarPath | active | ) |
|
virtual |
Add a portal from this node to the specified node.
This function should add a portal to the left and right lists which is connecting the two nodes (this and other).
other | The node which is on the other side of the portal (strictly speaking it does not actually have to be on the other side of the portal though). |
left | List of portal points on the left side of the funnel |
right | List of portal points on the right side of the funnel |
backwards | If this is true, the call was made on a node with the other node as the node before this one in the path. In this case you may choose to do nothing since a similar call will be made to the other node with this node referenced as other (but then with backwards = true). You do not have to care about switching the left and right lists, that is done for you already. |
The default implementation simply returns false.
This function may add more than one portal if necessary.
Reimplemented from GraphNode.
NodeLink3 link |
Vector3 portalA |
Vector3 portalB |