分类: Windows平台
2014-01-08 15:26:00
Spring-Embedder图形布局
Spring-Embedder是力导向布局算法。主要是模拟节点相互排斥的物理系统,节点之间的联系就会作为confining springs。通过Spring-Embedder处理图表,节点将会均匀分布在图面积上。该算法可以通过创建一个springlayout对象并调用 Arrange方法来应用在图像上。springlayout成员允许你设置图的节点间的距离,以及以及在计算节点位置时设置将要使用的迭代步数。
您也可以指定最小化链接通过,如果你选择这项的话,算法将会用更多的迭代步骤产生更好的结果。但是如果指定了多个步骤,就需要更多的时间来完成。在VB.NET 、 C#、Spring-Embedder 布局中可以像下面这样应用:
C#
1
2
3
4
5
6
7
8
9
10
11
12
|
using MindFusion.Diagramming;
using MindFusion.Diagramming.Layout;
...
private void button1_Click(object sender, EventArgs e)
{
SpringLayout sl = new SpringLayout();
sl.IterationCount = 500;
sl.NodeDistance = 30;
sl.Arrange(diagram);
}
|
Visual Basic
1
2
3
4
5
6
7
8
|
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim sl As New SpringLayout()
sl.IterationCount = 500
sl.NodeDistance = 30
sl.Arrange(diagram)
End Sub
|
网格图布局
网格布局算法在网格中的图表节点中,将节点连接在一起。力图实现少数量的链接通过。它是基于一个迭代过程,初始步骤将会随机混乱网格节点,所以在每次算法之后,就会有不同的结果。