C# Class Smrf.NodeXL.Layouts.HarelKorenFastMultiscaleLayout

Lays out a graph using the Harel-Koren fast multiscale algorithm.
For details on the layout algorithm, see "A Fast Multi-Scale Method for Drawing Large Graphs," David Harel and Yehuda Koren, Journal of Graph Algorithms and Applications, Vol. 6 No. 3, 2002.

Most property names are identical to the names used in the Harel-Koren paper. The exception is Iterations, which is renamed .

If the graph has a metadata key of , only the vertices specified in the value's IVertex collection are laid out and all other vertices are completely ignored.

If a vertex has a metadata key of with a value of true, its location is left unmodified.

This class wraps a C# implementation written by Janez Brank at Microsoft Research Cambridge in May 2009. The code from Janez is in the file HarelKorenFastMultiscaleLayoutInternal.cs.

Inheritance: LayoutBase
Show file Open project: 2014-sed-team3/term-project Class Usage Examples

Protected Properties

Property Type Description
m_iLocalIterations System.Int32
m_iMinSize System.Int32
m_iRad System.Int32
m_iRatio System.Int32

Public Methods

Method Description
AssertValid ( ) : void
HarelKorenFastMultiscaleLayout ( ) : System

Initializes a new instance of the HarelKorenFastMultiscaleLayout class.

Protected Methods

Method Description
LayOutGraphCore ( IGraph graph, ICollection verticesToLayOut, LayoutContext layoutContext, BackgroundWorker backgroundWorker ) : System.Boolean

Method Details

AssertValid() public method

public AssertValid ( ) : void
return void

HarelKorenFastMultiscaleLayout() public method

Initializes a new instance of the HarelKorenFastMultiscaleLayout class.
public HarelKorenFastMultiscaleLayout ( ) : System
return System

LayOutGraphCore() protected method

protected LayOutGraphCore ( IGraph graph, ICollection verticesToLayOut, LayoutContext layoutContext, BackgroundWorker backgroundWorker ) : System.Boolean
graph IGraph
verticesToLayOut ICollection
layoutContext LayoutContext
backgroundWorker System.ComponentModel.BackgroundWorker
return System.Boolean

Property Details

m_iLocalIterations protected property

protected Int32,System m_iLocalIterations
return System.Int32

m_iMinSize protected property

protected Int32,System m_iMinSize
return System.Int32

m_iRad protected property

protected Int32,System m_iRad
return System.Int32

m_iRatio protected property

protected Int32,System m_iRatio
return System.Int32