A* Pathfinding Project  3.1.4
The A* Pathfinding Project for Unity 3D
 All Classes Namespaces Files Functions Variables Enumerations Properties Groups Pages
GraphUpdateUtilities Class Reference

Contains useful functions for updating graphs. More...

Static Public Member Functions

static bool IsPathPossible (Node n1, Node n2)
 Returns if there is a walkable path from n1 to n2.
 
static bool IsPathPossible (List< Node > nodes)
 Returns if there are walkable paths between all nodes.
 
static bool UpdateGraphsNoBlock (GraphUpdateObject guo, Node node1, Node node2, bool alwaysRevert=false)
 Updates graphs and checks if all nodes are still reachable from each other.
 
static bool UpdateGraphsNoBlock (GraphUpdateObject guo, List< Node > nodes, bool alwaysRevert=false)
 Updates graphs and checks if all nodes are still reachable from each other.
 

Detailed Description

Contains useful functions for updating graphs.

This class works a lot with the Node class, a useful function to get nodes is AstarPath.GetNearest.

See Also
AstarPath.GetNearest
Pathfinding.Utils.PathUtilities
Since
Added in 3.1

Member Function Documentation

static bool IsPathPossible ( Node  n1,
Node  n2 
)
static

Returns if there is a walkable path from n1 to n2.

If you are making changes to the graph, areas must first be recaculated using FloodFill()

Note
This might return true for small areas even if there is no possible path if AstarPath.minAreaSize is greater than zero (0). So when using this, it is recommended to set AstarPath.minAreaSize to 0. (A* Inspector -> Settings -> Pathfinding)
See Also
AstarPath.GetNearest
Deprecated:
This function has been moved to Pathfinding.Util.PathUtilities. Please use the version in that class
static bool IsPathPossible ( List< Node nodes)
static

Returns if there are walkable paths between all nodes.

If you are making changes to the graph, areas must first be recaculated using FloodFill()

Note
This might return true for small areas even if there is no possible path if AstarPath.minAreaSize is greater than zero (0). So when using this, it is recommended to set AstarPath.minAreaSize to 0. (A* Inspector -> Settings -> Pathfinding)
See Also
AstarPath.GetNearest
Deprecated:
This function has been moved to Pathfinding.Util.PathUtilities. Please use the version in that class
static bool UpdateGraphsNoBlock ( GraphUpdateObject  guo,
Node  node1,
Node  node2,
bool  alwaysRevert = false 
)
static

Updates graphs and checks if all nodes are still reachable from each other.

Graphs are updated, then a check is made to see if the nodes are still reachable from each other. If they are not, the graphs are reverted to before the update and false is returned.
This is slower than a normal graph update. All queued graph updates and thread safe callbacks will be flushed during this function.

Note
This might return true for small areas even if there is no possible path if AstarPath.minAreaSize is greater than zero (0). So when using this, it is recommended to set AstarPath.minAreaSize to 0 (A* Inspector -> Settings -> Pathfinding)
Parameters
guoThe GraphUpdateObject to update the graphs with
node1Node which should have a valid path to node2. All nodes should be walkable or false will be returned.
node2Node which should have a valid path to node1. All nodes should be walkable or false will be returned.
alwaysRevertIf true, reverts the graphs to the old state even if no blocking ocurred

+ Here is the caller graph for this function:

static bool UpdateGraphsNoBlock ( GraphUpdateObject  guo,
List< Node nodes,
bool  alwaysRevert = false 
)
static

Updates graphs and checks if all nodes are still reachable from each other.

Graphs are updated, then a check is made to see if the nodes are still reachable from each other. If they are not, the graphs are reverted to before the update and false is returned. This is slower than a normal graph update. All queued graph updates and thread safe callbacks will be flushed during this function.

Note
This might return true for small areas even if there is no possible path if AstarPath.minAreaSize is greater than zero (0). So when using this, it is recommended to set AstarPath.minAreaSize to 0. (A* Inspector -> Settings -> Pathfinding)
Parameters
guoThe GraphUpdateObject to update the graphs with
nodesNodes which should have valid paths between them. All nodes should be walkable or false will be returned.
alwaysRevertIf true, reverts the graphs to the old state even if no blocking ocurred

+ Here is the call graph for this function:


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