A* Pathfinding Project
4.0.1
The A* Pathfinding Project for Unity 3D
|
Node used for the PointGraph. More...
Node used for the PointGraph.
This is just a simple point with a list of connections (and associated costs) to other nodes. It does not have any concept of a surface like many other node types.
Public Member Functions | |
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 > del) |
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 bool | GetPortal (GraphNode other, List< Vector3 > left, List< Vector3 > right, bool backwards) |
Add a portal from this node to the specified node. | |
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. | |
void | UpdateG (Path path, PathNode pathNode) |
Public Attributes | |
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. | |
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] |
bool | Destroyed [get] |
uint | Flags [get, set] |
Holds various bitpacked variables. | |
uint | GraphIndex [get, set] |
int | NodeIndex [get] |
Internal unique index. | |
uint | Penalty [get, set] |
Penalty cost for walking on this node. | |
uint | Tag [get, set] |
bool | Walkable [get, set] |
True if the node is traversable. | |
|
virtual |
Add a connection from this node to the specified node.
If the connection already exists, the cost will simply be updated and no extra connection added.
Implements GraphNode.
|
virtual |
Remove all connections from this node.
alsoReverse | if true, neighbours will be requested to remove connections to this node. |
Implements GraphNode.
|
virtual |
Checks if this node has a connection to the specified node.
Reimplemented from GraphNode.
|
virtual |
Reimplemented from GraphNode.
|
virtual |
Used to deserialize references to other nodes e.g connections.
Use the GraphSerializationContext.GetNodeIdentifier and GraphSerializationContext.GetNodeFromIdentifier methods for serialization and deserialization respectively.
Nodes must override this method and serialize their connections. Graph generators do not need to call this method, it will be called automatically on all nodes at the correct time by the serializer.
Reimplemented from GraphNode.
|
virtual |
Calls the delegate with all connections from this node.
You can add all connected nodes to a list like this
Implements GraphNode.
|
virtual |
Hash code used for checking if the gizmos need to be updated.
Will change when the gizmos for the node might change.
Reimplemented from GraphNode.
|
virtual |
Open the node.
Implements GraphNode.
|
virtual |
Removes any connection from this node to the specified node.
If no such connection exists, nothing will be done.
Implements GraphNode.
|
virtual |
Reimplemented from GraphNode.
|
virtual |
Used to serialize references to other nodes e.g connections.
Use the GraphSerializationContext.GetNodeIdentifier and GraphSerializationContext.GetNodeFromIdentifier methods for serialization and deserialization respectively.
Nodes must override this method and serialize their connections. Graph generators do not need to call this method, it will be called automatically on all nodes at the correct time by the serializer.
Reimplemented from GraphNode.
void SetPosition | ( | Int3 | value | ) |
|
virtual |
Reimplemented from GraphNode.
Connection [] connections |
GameObject gameObject |
GameObject this node was created from (if any).