Base class for GridNode and LevelGridNode.
More...
Base class for GridNode and LevelGridNode.
|
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 (System.Collections.Generic.Stack< GraphNode > stack, uint region) |
|
override void | GetConnections (GraphNodeDelegate del) |
| Calls the delegate with all connections from this node.
|
|
override void | Open (Path path, PathNode pathNode, PathHandler handler) |
| Open the node.
|
|
override Vector3 | RandomPointOnSurface () |
| A random point on the surface of the 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.
|
|
override float | SurfaceArea () |
| The surface area of the node in square world units.
|
|
override void | UpdateRecursiveG (Path path, PathNode pathNode, PathHandler handler) |
|
virtual void | DeserializeNode (GraphSerializationContext ctx) |
|
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 void | RecalculateConnectionCosts () |
| Recalculates all connection costs from this node.
|
|
virtual void | SerializeNode (GraphSerializationContext ctx) |
|
void | UpdateG (Path path, PathNode pathNode) |
|
|
int | NodeInGridIndex [get, set] |
| The index of the node in the grid.
|
|
bool | TmpWalkable [get, set] |
| Temporary variable used internally when updating the graph.
|
|
bool | WalkableErosion [get, set] |
| Stores walkability before erosion is applied.
|
|
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.
|
|
|
static readonly System.Version | VERSION_3_8_3 = new System.Version(3, 8, 3) |
| Cached to avoid allocations.
|
|
override void AddConnection |
( |
GraphNode |
node, |
|
|
uint |
cost |
|
) |
| |
|
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.
- Note
- Only adds a one-way connection. Consider calling the same function on the other node to get a two-way connection.
Implements GraphNode.
override void ClearConnections |
( |
bool |
alsoReverse | ) |
|
|
virtual |
Remove all connections from this node.
- Parameters
-
alsoReverse | if true, neighbours will be requested to remove connections to this node. |
Implements GraphNode.
override bool ContainsConnection |
( |
GraphNode |
node | ) |
|
|
virtual |
Checks if this node has a connection to the specified node.
Reimplemented from GraphNode.
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.
override void FloodFill |
( |
System.Collections.Generic.Stack< GraphNode > |
stack, |
|
|
uint |
region |
|
) |
| |
Calls the delegate with all connections from this node.
Implements GraphNode.
override Vector3 RandomPointOnSurface |
( |
| ) |
|
|
virtual |
A random point on the surface of the node.
For point nodes and other nodes which do not have a surface, this will always return the position of the node.
Reimplemented from GraphNode.
override void RemoveConnection |
( |
GraphNode |
node | ) |
|
|
virtual |
Removes any connection from this node to the specified node.
If no such connection exists, nothing will be done.
- Note
- This only removes the connection from this node to the other node. You may want to call the same function on the other node to remove its eventual connection to this node.
Implements GraphNode.
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.
override float SurfaceArea |
( |
| ) |
|
|
virtual |
The surface area of the node in square world units.
Reimplemented from GraphNode.
const int GridFlagsWalkableErosionOffset = 8 |
|
private |
const int GridFlagsWalkableTmpOffset = 9 |
|
private |
readonly System.Version VERSION_3_8_3 = new System.Version(3, 8, 3) |
|
staticprivate |
Cached to avoid allocations.
The index of the node in the grid.
This is x + z*graph.width So you can get the X and Z indices using
int index = node.NodeInGridIndex;
int x = index % graph.width;
int z = index / graph.width;
Temporary variable used internally when updating the graph.
Stores walkability before erosion is applied.
Used internally when updating the graph.
The documentation for this class was generated from the following file:
- /Users/arong/Unity/a-pathfinding-project/Assets/AstarPathfindingProject/Generators/NodeClasses/GridNodeBase.cs