Interface ITopology
A ITopology specifies a discrete area, volume or graph, and provides generic navigation methods.
Topologies are used to support generation in a wide variety of shapes.
Topologies do not actually store data, they just specify the dimensions. Actual data is stored in an ITopoArray<T>.
Further information can be found in the documentation.
Assembly: DeBroglie.dll
Syntax
public interface ITopology
Properties
|
Edit this page
View Source
Depth
The extent along the z-axis.
Declaration
Property Value
|
Edit this page
View Source
DirectionsCount
Number of unique directions
Declaration
int DirectionsCount { get; }
Property Value
|
Edit this page
View Source
Height
The extent along the y-axis.
Declaration
Property Value
|
Edit this page
View Source
IndexCount
Number of unique indices (distinct locations) in the topology
Declaration
Property Value
|
Edit this page
View Source
Mask
A array with one value per index indcating if the value is missing.
Not all uses of Topology support masks.
Declaration
Property Value
|
Edit this page
View Source
Width
The extent along the x-axis.
Declaration
Property Value
Methods
|
Edit this page
View Source
GetCoord(int, out int, out int, out int)
Declaration
void GetCoord(int index, out int x, out int y, out int z)
Parameters
|
Edit this page
View Source
GetIndex(int, int, int)
Reduces a three dimensional co-ordinate to a single integer. This is mostly used internally.
Declaration
int GetIndex(int x, int y, int z)
Parameters
Returns
|
Edit this page
View Source
TryMove(int, Direction, out int)
Given an index and a direction, gives the index that is one step in that direction,
if it exists and is not masked out. Otherwise, it returns false.
Declaration
bool TryMove(int index, Direction direction, out int dest)
Parameters
Returns
|
Edit this page
View Source
TryMove(int, Direction, out int, out Direction, out EdgeLabel)
Given an index and a direction, gives the index that is one step in that direction,
if it exists and is not masked out. Otherwise, it returns false.
Additionally returns information about the edge traversed.
Declaration
bool TryMove(int index, Direction direction, out int dest, out Direction inverseDirection, out EdgeLabel edgeLabel)
Parameters
Returns
|
Edit this page
View Source
TryMove(int, int, int, Direction, out int)
Given a co-ordinate and a direction, gives the index that is one step in that direction,
if it exists and is not masked out. Otherwise, it returns false.
Declaration
bool TryMove(int x, int y, int z, Direction direction, out int dest)
Parameters
Returns
|
Edit this page
View Source
TryMove(int, int, int, Direction, out int, out Direction, out EdgeLabel)
Given a co-ordinate and a direction, gives the index that is one step in that direction,
if it exists and is not masked out. Otherwise, it returns false.
Additionally returns information about the edge traversed.
Declaration
bool TryMove(int x, int y, int z, Direction direction, out int dest, out Direction inverseDirection, out EdgeLabel edgeLabel)
Parameters
Returns
|
Edit this page
View Source
TryMove(int, int, int, Direction, out int, out int, out int)
Given a co-ordinate and a direction, gives the co-ordinate that is one step in that direction,
if it exists and is not masked out. Otherwise, it returns false.
Declaration
bool TryMove(int x, int y, int z, Direction direction, out int destx, out int desty, out int destz)
Parameters
Returns
|
Edit this page
View Source
WithMask(bool[])
Returns a topology with the same structure as this one,
but with a different mask.
Declaration
ITopology WithMask(bool[] mask)
Parameters
Type |
Name |
Description |
bool[] |
mask |
|
Returns
Extension Methods