Show / Hide Table of Contents

Class ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo, TParameters>

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

Inheritance
System.Object
AlgorithmBase
LayoutAlgorithmBase<TVertex, TEdge, TGraph>
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo, TParameters>
DoubleTreeLayoutAlgorithm<TVertex, TEdge, TGraph>
Implements
IAlgorithm
IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph, TParameters>
IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph>
ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>
ILayoutAlgorithm<TVertex, TEdge, TGraph>
QuikGraph.Algorithms.IAlgorithm<TGraph>
QuikGraph.Algorithms.IComputation
Inherited Members
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.Parameters
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.GetParameters()
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.DefaultParameters
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.InitParameters(TParameters)
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.Rand
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.InitializeWithRandomPositions(Double, Double)
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.InitializeWithRandomPositions(Double, Double, Double, Double)
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.NormalizePositions()
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.CreateLayoutIterationEventArgs(Int32, Double, String, IDictionary<TVertex, Point>)
ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.OnIterationEnded(Int32, Double, String, Boolean)
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 ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo, TParameters> : ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>, IAlgorithm, IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph, TParameters>, IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph>, ILayoutAlgorithm<TVertex, TEdge, TGraph, TVertexInfo, TEdgeInfo>, ILayoutAlgorithm<TVertex, TEdge, TGraph>, IAlgorithm<TGraph>, IComputation where TEdge : IEdge<TVertex> where TGraph : IVertexAndEdgeListGraph<TVertex, TEdge> where TParameters : class, ILayoutParameters
Type Parameters
Name Description
TVertex

Vertex type.

TEdge

Edge type.

TGraph

Graph type.

TVertexInfo

Vertex information type.

TEdgeInfo

Edge information type.

TParameters

Parameters type.

Constructors

| Improve this Doc View Source

ParameterizedLayoutAlgorithmBase(TGraph)

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

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

Graph to layout.

Exceptions
Type Condition
System.ArgumentNullException

visitedGraph is null.

| Improve this Doc View Source

ParameterizedLayoutAlgorithmBase(TGraph, IDictionary<TVertex, Point>, TParameters)

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

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

Graph to layout.

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

Vertices positions.

TParameters parameters

Optional algorithm parameters.

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

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

CreateLayoutIterationEventArgs(Int32, Double, String, IDictionary<TVertex, Point>)

Creates event arguments for IterationEnded.

Declaration
protected override ILayoutIterationEventArgs<TVertex> CreateLayoutIterationEventArgs(int iteration, double statusInPercent, string message, IDictionary<TVertex, Point> verticesPositions)
Parameters
Type Name Description
System.Int32 iteration

Number of the current iteration.

System.Double statusInPercent

Status of the layout algorithm in percent.

System.String message

Message representing the status of the algorithm.

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

Vertices positions associations.

Returns
Type Description
ILayoutIterationEventArgs<TVertex>

A new instance of ILayoutInfoIterationEventArgs<TVertex, TEdge, TVertexInfo, TEdgeInfo>.

Overrides
GraphShape.Algorithms.Layout.ParameterizedLayoutAlgorithmBase<TVertex, TEdge, TGraph, TParameters>.CreateLayoutIterationEventArgs(System.Int32, System.Double, System.String, System.Collections.Generic.IDictionary<TVertex, GraphShape.Point>)
Exceptions
Type Condition
System.ArgumentNullException

message is null.

System.ArgumentOutOfRangeException

iteration is negative.

System.ArgumentOutOfRangeException

statusInPercent is negative.

| 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
IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph, TParameters>
IParameterizedLayoutAlgorithm<TVertex, TEdge, TGraph>
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