Hflow 및Oflow, Sflow와Tflow는AddFlow의 확장판이며, 사용하기 위해서는 AddFlow가 필요합니다. 일반적으로는 각각의 노드에 대하여 최초에 임의 또는 (0, 0)포지션을 제공하거나 또는AddFlowAPI을 이용함으로써 AddFlow 내에 노드와 링크가 작성됩니다. 계속해서 선택한 그래프 레이아웃 컨트롤의 레이아웃 메소드를 콜합니다. 이 메소드는 선택된 컨트롤(Hflow에 의한 계층이나 Sflow에 의한 대칭, Oflow에 의한 직교 등)에 의존하는 일정의 일정한 외관에 따라AddFlow 컨트롤 내의 메소드와 링크를 합리적인 수법에 의하여 배치합니다.
AddFlow컨트롤 정점과 엣지만이 이 레이아웃과 관계되어 있습니다. 유저는 중요한 정점에 대해서만 레이아웃을 적용하는 것이 가능해집니다. 예를 들면 그 Logical 프로퍼티를 false에 설정함으로써 라벨을 표시하기 위하여 사용되는 노드를 제거하는 것이 가능해집니다.
LayoutFlow for .NET는 그래프를 그리기 위한 알고리즘이며 다음과 같은 내용을 포함합니다.
1) Hflow
Hflow레이아웃 알고리즘은 수평 계층에서 정점을 조정하기 위한 것입니다. 그 정점 배열은 교차점 수가 작아지도록 선택됩니다. Hflow에 의한 솔루션은 최적을 목적으로 하는 것이라기보다는 합리성을 고려한 것입니다.
2) Oflow
Oflow레이아웃 알고리즘은 그래프상에 직교하는 레이아웃을 실현합니다. 이러한 레이아웃이 직교되는 이유는 각각의 엣지가 수평과 수직으로 상호 교차로 접속하는 다각형으로 그려지는 경우에 직교 묘화가 생성되기 때문입니다. Oflow는 그래프간의 접속 유무에 상관 없이 기능합니다. 묘화의 결과로써 최대 4도 이내의 그래프가 되는 경우에는 각각의 노드가 동일한 크기를 갖게 됩니다. 만일 노드 각의 각도가 4도 이상이라면 노드의 높이는 확대되게 됩니다.
3) Sflow
Sflow레이아웃 알고리즘은 그래프상에서 대칭적인 레이아웃을 실현합니다. 대칭적인 레이아웃은 정확한 대칭을 만들어내며, 특히 엣지 방향이 중요하지 않은 방향성이 없는 그래프에서도 유효합니다. 대부분의 경우 결과물인 레이아웃은 양호합니다. 그러나 많은 계산상리소스가 필요하기 때문에 작은 그래프(300이하의 노드 수)에 대하여 사용해야 합니다. 애니메이션 모드를 사용함으로써Sflow기능을 하는 모습을 확인할 수 있습니다.
4) Tflow
Tflow레이아웃 알고리즘은 그래프상에서 트리 레이아웃을 실현합니다. 트리 레이아웃은 루팅된 트리이며, 그래프 내의 특정 서브 셋에만 적용됩니다. 이러한 그래프에서 복수의 부모를 갖는 정점은 없습니다. 트리 묘화는 일정의 미관을 만족시킬 뿐 아니라 극히 한정된 영역에서만 점유합니다.
DrawingStyle프로퍼티 값이 「Layered」라면:
- 트리상의 동일 레벨 정점은 동일 선상에 배치됩니다.
- 부모 노드는 그 자녀들 중심에 배치됩니다.
DrawingStyle프로퍼티 값이「Radial」라면:
- 루트는 본래의 위치에 배치됩니다.
- 계층은 본래의 위치를 중심으로 한 동심원으로 배치됩니다.
LayoutFlow for .NET를 사용할 때에는 AddFlow for .NET가 필요한 점에 주의해주십시오. 쌍방의 제품은 공통 인스트레이션 프로그램에 의하여 인스톨됩니다.
|