init(fromGridStartingAt:width:height:diagonalsAllowed:nodeClass:)
Initializes a graph that describes an integer grid with the specified dimensions, using the specified node class.
Declaration
init(fromGridStartingAt position: vector_int2, width: Int32, height: Int32, diagonalsAllowed: Bool, nodeClass: AnyClass)Parameters
- position:
The lowest x- and y-coordinates to appear in the grid.
- width:
The number of possible x-coordinates in the grid.
- height:
The number of possible y-coordinates in the grid.
- diagonalsAllowed:
True to connect nodes in the grid to their diagonal neighbors; False to connect nodes only to their horizontal and vertical neighbors.
- nodeClass:
The Gkgridgraphnode subclass to use for nodes in the graph.
Return Value
A new grid graph.
Discussion
Use the nodeClass parameter to create a graph using a custom subclass of GKGridGraphNode. For example, your custom node class might override the cost(to:) method so that some nodes are more costly than others to travel through. Pathfinding in such a graph would favor indirect routes when a direct route has a higher cost.
All connections created through this method are bidirectional.
For more information, see GameplayKit Programming Guide.