Class AreaGraph
A graph of connected areas.
Inheritance
System.Object
AreaGraph
Syntax
public class AreaGraph : IMutableUndirectedGraph<Area, AreaGraphEdge>
Properties
AllowParallelEdges
Declaration
public bool AllowParallelEdges { get; }
Property Value
Type |
Description |
System.Boolean |
|
EdgeCount
Declaration
public int EdgeCount { get; }
Property Value
Type |
Description |
System.Int32 |
|
EdgeEqualityComparer
Declaration
public EdgeEqualityComparer<Area> EdgeEqualityComparer { get; }
Property Value
Type |
Description |
EdgeEqualityComparer<Area> |
|
Edges
Declaration
public IEnumerable<AreaGraphEdge> Edges { get; }
Property Value
IsDirected
Declaration
public bool IsDirected { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsEdgesEmpty
Declaration
public bool IsEdgesEmpty { get; }
Property Value
Type |
Description |
System.Boolean |
|
IsVerticesEmpty
Declaration
public bool IsVerticesEmpty { get; }
Property Value
Type |
Description |
System.Boolean |
|
VertexCount
Declaration
public int VertexCount { get; }
Property Value
Type |
Description |
System.Int32 |
|
Vertices
Declaration
public IEnumerable<Area> Vertices { get; }
Property Value
Type |
Description |
IEnumerable<Area> |
|
Methods
AddEdge(AreaGraphEdge)
Declaration
public bool AddEdge(AreaGraphEdge edge)
Parameters
Returns
Type |
Description |
System.Boolean |
|
AddEdgeRange(IEnumerable<AreaGraphEdge>)
Declaration
public int AddEdgeRange(IEnumerable<AreaGraphEdge> edges)
Parameters
Returns
Type |
Description |
System.Int32 |
|
AddVertex(Area)
Declaration
public bool AddVertex(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Type |
Description |
System.Boolean |
|
AddVertexRange(IEnumerable<Area>)
Declaration
public int AddVertexRange(IEnumerable<Area> vertices)
Parameters
Type |
Name |
Description |
IEnumerable<Area> |
vertices |
|
Returns
Type |
Description |
System.Int32 |
|
AddVerticesAndEdge(AreaGraphEdge)
Declaration
public bool AddVerticesAndEdge(AreaGraphEdge edge)
Parameters
Returns
Type |
Description |
System.Boolean |
|
AddVerticesAndEdgeRange(IEnumerable<AreaGraphEdge>)
Declaration
public int AddVerticesAndEdgeRange(IEnumerable<AreaGraphEdge> edges)
Parameters
Returns
Type |
Description |
System.Int32 |
|
AdjacentDegree(Area)
Declaration
public int AdjacentDegree(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Type |
Description |
System.Int32 |
|
AdjacentEdge(Area, Int32)
Declaration
public AreaGraphEdge AdjacentEdge(Area vertex, int index)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
System.Int32 |
index |
|
Returns
AdjacentEdges(Area)
Declaration
public IEnumerable<AreaGraphEdge> AdjacentEdges(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Clear()
Declaration
ClearAdjacentEdges(Area)
Declaration
public void ClearAdjacentEdges(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Clone()
Declaration
Returns
ContainsEdge(Area, Area)
Declaration
public bool ContainsEdge(Area source, Area target)
Parameters
Type |
Name |
Description |
Area |
source |
|
Area |
target |
|
Returns
Type |
Description |
System.Boolean |
|
ContainsEdge(AreaGraphEdge)
Declaration
public bool ContainsEdge(AreaGraphEdge edge)
Parameters
Returns
Type |
Description |
System.Boolean |
|
ContainsVertex(Area)
Declaration
public bool ContainsVertex(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Type |
Description |
System.Boolean |
|
IsAdjacentEdgesEmpty(Area)
Declaration
public bool IsAdjacentEdgesEmpty(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Type |
Description |
System.Boolean |
|
RemoveAdjacentEdgeIf(Area, EdgePredicate<Area, AreaGraphEdge>)
Declaration
public int RemoveAdjacentEdgeIf(Area vertex, EdgePredicate<Area, AreaGraphEdge> predicate)
Parameters
Returns
Type |
Description |
System.Int32 |
|
RemoveEdge(AreaGraphEdge)
Declaration
public bool RemoveEdge(AreaGraphEdge edge)
Parameters
Returns
Type |
Description |
System.Boolean |
|
RemoveEdgeIf(EdgePredicate<Area, AreaGraphEdge>)
Declaration
public int RemoveEdgeIf(EdgePredicate<Area, AreaGraphEdge> predicate)
Parameters
Returns
Type |
Description |
System.Int32 |
|
RemoveVertex(Area)
Declaration
public bool RemoveVertex(Area vertex)
Parameters
Type |
Name |
Description |
Area |
vertex |
|
Returns
Type |
Description |
System.Boolean |
|
RemoveVertexIf(VertexPredicate<Area>)
Declaration
public int RemoveVertexIf(VertexPredicate<Area> predicate)
Parameters
Type |
Name |
Description |
VertexPredicate<Area> |
predicate |
|
Returns
Type |
Description |
System.Int32 |
|
TryGetEdge(Area, Area, out AreaGraphEdge)
Declaration
public bool TryGetEdge(Area source, Area target, out AreaGraphEdge edge)
Parameters
Returns
Type |
Description |
System.Boolean |
|
Events
EdgeAdded
Declaration
public event EdgeAction<Area, AreaGraphEdge> EdgeAdded
Event Type
EdgeRemoved
Declaration
public event EdgeAction<Area, AreaGraphEdge> EdgeRemoved
Event Type
VertexAdded
Declaration
public event VertexAction<Area> VertexAdded
Event Type
Type |
Description |
VertexAction<Area> |
|
VertexRemoved
Declaration
public event VertexAction<Area> VertexRemoved
Event Type
Type |
Description |
VertexAction<Area> |
|
Implements
ICloneable