Show / Hide Table of Contents

Class LayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>

Base class for all ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo> implementations.

Inheritance
System.Object
AlgorithmBase
LayoutAlgorithmBase<TVertex, TEdge, TGraph>
LayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>
Implements
IAlgorithm
ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>
ILayoutAlgorithm<TVertex, TEdge, TGraph>
QuikGraph.Algorithms.IAlgorithm<TGraph>
QuikGraph.Algorithms.IComputation
Inherited Members
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.VisitedGraph
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.VerticesPositions
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.ProgressChanged
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.IterationEnded
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.ReportOnProgressChangedNeeded
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.ReportOnIterationEndNeeded
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.GetVertexInfo(TVertex)
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.GetEdgeInfo(TEdge)
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.OnProgressChanged(Double)
LayoutAlgorithmBase<TVertex, TEdge, TGraph>.OnIterationEnded(ILayoutIterationEventArgs<TVertex>)
AlgorithmBase.IsCancelling
AlgorithmBase.ThrowIfCancellationRequested()
AlgorithmBase.SyncRoot
AlgorithmBase.State
AlgorithmBase.Compute()
AlgorithmBase.Abort()
AlgorithmBase.StateChanged
AlgorithmBase.OnStateChanged(EventArgs)
AlgorithmBase.Started
AlgorithmBase.OnStarted(EventArgs)
AlgorithmBase.Finished
AlgorithmBase.OnFinished(EventArgs)
AlgorithmBase.Aborted
AlgorithmBase.OnAborted(EventArgs)
AlgorithmBase.Initialize()
AlgorithmBase.InternalCompute()
AlgorithmBase.Clean()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.ToString()
Namespace: GraphShape.Algorithms.Layout
Assembly: GraphShape.dll
Syntax
public abstract class LayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo> : LayoutAlgorithmBase<TVertex, TEdge, TGraph>, IAlgorithm, ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>, ILayoutAlgorithm<TVertex, TEdge, TGraph>, IAlgorithm<TGraph>, IComputation where TEdge : IEdge<TVertex> where TGraph : IVertexAndEdgeListGraph<TVertex, TEdge>
Type Parameters
Name Description
TVertex

Vertex type.

TEdge

Edge type.

TGraph

Graph type.

TVertexInfo

Vertex information type.

TEdgeInfo

Edge information type.

Constructors

| Improve this Doc View Source

LayoutAlgorithmBase(TGraph)

Initializes a new instance of the LayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo> class.

Declaration
protected LayoutAlgorithmBase(TGraph visitedGraph)
Parameters
Type Name Description
TGraph visitedGraph

Graph to layout.

Exceptions
Type Condition
System.ArgumentNullException

visitedGraph is null.

| Improve this Doc View Source

LayoutAlgorithmBase(TGraph, IDictionary<TVertex, Point>)

Initializes a new instance of the LayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo> class.

Declaration
protected LayoutAlgorithmBase(TGraph visitedGraph, IDictionary<TVertex, Point> verticesPositions)
Parameters
Type Name Description
TGraph visitedGraph

Graph to layout.

System.Collections.Generic.IDictionary<TVertex, Point> verticesPositions

Vertices positions.

Exceptions
Type Condition
System.ArgumentNullException

visitedGraph is null.

Properties

| Improve this Doc View Source

EdgesInfos

Extra edges information, calculated by the layout.

Declaration
public IDictionary<TEdge, TEdgeInfo> EdgesInfos { get; }
Property Value
Type Description
System.Collections.Generic.IDictionary<TEdge, TEdgeInfo>
| Improve this Doc View Source

ReportOnIterationEndNeeded

Indicates if there is any watcher on iterations ends.

Declaration
public override bool ReportOnIterationEndNeeded { get; }
Property Value
Type Description
System.Boolean
Overrides
GraphShape.Algorithms.Layout.LayoutAlgorithmBase<TVertex, TEdge, TGraph>.ReportOnIterationEndNeeded
| Improve this Doc View Source

VerticesInfos

Extra vertices information, calculated by the layout.

Declaration
public IDictionary<TVertex, TVertexInfo> VerticesInfos { get; }
Property Value
Type Description
System.Collections.Generic.IDictionary<TVertex, TVertexInfo>

Methods

| Improve this Doc View Source

GetEdgeInfo(TEdge)

Returns the extra layout information of the edge (or null).

Declaration
public override object GetEdgeInfo(TEdge edge)
Parameters
Type Name Description
TEdge edge
Returns
Type Description
System.Object
Overrides
GraphShape.Algorithms.Layout.LayoutAlgorithmBase<TVertex, TEdge, TGraph>.GetEdgeInfo(TEdge)
| Improve this Doc View Source

GetVertexInfo(TVertex)

Returns the extra layout information of the vertex (or null).

Declaration
public override object GetVertexInfo(TVertex vertex)
Parameters
Type Name Description
TVertex vertex
Returns
Type Description
System.Object
Overrides
GraphShape.Algorithms.Layout.LayoutAlgorithmBase<TVertex, TEdge, TGraph>.GetVertexInfo(TVertex)

Events

| Improve this Doc View Source

InfoIterationEnded

Fired when a layout iteration has been done (with more detailed information).

Declaration
public event LayoutIterationEndedEventHandler<TVertex, TEdge, TVertexInfo, TEdgeInfo> InfoIterationEnded
Event Type
Type Description
LayoutIterationEndedEventHandler<TVertex, TEdge, TVertexInfo, TEdgeInfo>

Implements

IAlgorithm
ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>
ILayoutAlgorithm<TVertex, TEdge, TGraph>
QuikGraph.Algorithms.IAlgorithm<TGraph>
QuikGraph.Algorithms.IComputation

Extension Methods

GraphHelpers.GetDistances<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph)
GraphHelpers.GetDiameter<TVertex, TEdge, TGraph>(TGraph, out Double[,])
  • Improve this Doc
  • View Source
In This Article
Back to top GraphShape