Method | Description | |
---|---|---|
BundleAllEdges ( IGraph graph, |
Bundles edges of the graph.
|
|
BundleEdges ( IGraph graph, IEnumerable |
Bundles specified edges. Shapes of all the other edges remain the same, so this method is faster than the one for bundling all edges, but also produces less optimal layout.
|
|
StraightenEdges ( IGraph graph, float s ) : void |
Moves the control points of all the edges of the graph closer to their original position on the straight edge
|
Method | Description | |
---|---|---|
AddAllExistingData ( IEdgeCollection edges ) : void |
Collects edge data from all edges in the specified collection. Used for edges that already have control points metadata.
|
|
AddDataForAllEdges ( IEdgeCollection edges ) : void |
Collects edge data from all edges in the specified collection. Used by the BundleAllEdges method.
|
|
AddEdgeData ( IEdge e ) : void |
Collects data from the specified edge
|
|
AddEdgeDataForMovedEdges ( IEnumerable |
Collects edge data from the specified edges
|
|
AddExistingData ( IEdge e ) : void |
Collects data from the specified edge. Used for edges that already have control points metadata.
|
|
AngleCompatibility ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates angle compatibility of the two edges
|
|
CalculateCompatibility ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates compatibility of the two edges. Combines angle, position, scale, and visibility compatibility coefficient.
|
|
CalculateDirectedness ( EdgeGroupData ed1, EdgeGroupData ed2 ) : bool |
Calculates directedness of the two edges.
|
|
CalculateNewControlPoints ( Object o ) : void |
Calculates new positions for the control points of an edge by applying elastic and electrostatic forces to them
|
|
DivideAllEdges ( int subdivisionPointsNum ) : void |
Divides edges into segments by adding subdivision points to them
|
|
DivideEdge ( EdgeGroupData ed, int subdivisionPointsNum ) : void |
Divides an edge into segments by adding subdivision points to it
|
|
DoubleSubdivisionPoints ( EdgeGroupData ed ) : void |
Doubles subdivision points for an edge by adding one new subdivision point between each two
|
|
DoubleSubdivisionPointsForAllEdges ( ) : void |
Doubles subdivision points for all edges
|
|
FindCompatibleEdges ( EdgeGroupData>.Dictionary |
Finds compatible edges for the specified set of edges
|
|
Intersects ( |
Finds an intersection point of the two lines
|
|
MoveControlPoints ( EdgeGroupData>.Dictionary |
Moves control points for the specified edges
|
|
PositionCompatibility ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates position compatibility of the two edges
|
|
ResetMovedEdges ( ) : void |
Straightens moved edges.
|
|
ScaleCompatibility ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates scale compatibility of the two edges
|
|
StraightenEdgesInternally ( EdgeGroupData>.Dictionary |
Straightens the edges using internal data sturctures
|
|
VisibilityCoefficient ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates visibility coefficient of the two edges.
|
|
VisibilityCompatibility ( EdgeGroupData ed1, EdgeGroupData ed2 ) : float |
Calculates visibility compatibility of the two edges. Uses lower of the two calculated visibility coefficients.
|
public BundleAllEdges ( IGraph graph, |
||
graph | IGraph | /// Graph whose edges should be bundled /// |
rectangle | /// Rectangle in which the graph is laid out. /// Control points of bundled edges should not fall outside of this rectangle. /// | |
return | void |
public BundleEdges ( IGraph graph, IEnumerable |
||
graph | IGraph | /// Parent graph of the edge set /// |
edges | IEnumerable |
/// Edges that should be bundled /// |
rectangle | /// Rectangle in which the graph is laid out. /// Control points of bundled edges should not fall outside of this rectangle. /// | |
return | void |
public StraightenEdges ( IGraph graph, float s ) : void | ||
graph | IGraph | /// Graph whose edges should be straightened /// |
s | float | /// Specifies the amount of straightening, from 0 to 1 /// |
return | void |