Changes for page The Five Phases
Last modified by Alexander Schulz-Rosengarten on 2023/07/11 10:33
To version 8.1
edited by msp
on 2012/07/17 13:05
on 2012/07/17 13:05
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Objects (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. cds1 +XWiki.msp - Content
-
... ... @@ -30,7 +30,9 @@ 30 30 ((( 31 31 Implementations 32 32 )))|((( 33 -* {{code language="none"}}GreedyCycleBreaker{{/code}}. Uses a greedy approach to cycle-breaking. 33 +* {{code language="none"}}GreedyCycleBreaker{{/code}}. Uses a greedy approach to cycle-breaking, inspired by \\ 34 +** Peter Eades, Xuemin Lin, W. F. Smyth, A fast and effective heuristic for the feedback arc set problem. //Information Processing Letters// 47(6), pp. 319-323, 1993. 35 +* {{code language="none"}}InteractiveCycleBreaker.{{/code}} Detects feedback edges according to the current layout, hence it reacts to the user's placement. 34 34 ))) 35 35 36 36 == Phase 2: Layering == ... ... @@ -65,8 +65,12 @@ 65 65 Implementations 66 66 )))|((( 67 67 * {{code language="none"}}LongestPathLayerer{{/code}}. Layers nodes according to the longest paths between them. Very simple, and doesn't usually give the best results. 68 -* {{code language="none"}}NetworkSimplexLayerer{{/code}}. A way more sophisticated algorithm whose results are usually very good. 70 +* {{code language="none"}}NetworkSimplexLayerer{{/code}}. A way more sophisticated algorithm whose results are usually very good, inspired by\\ 71 +** ((( 72 +Emden R. Gansner, Eleftherios Koutsofios, Stephen C. North, Kiem-Phong Vo, A technique for drawing directed graphs. //Software Engineering// 19(3), pp. 214-230, 1993. 69 69 ))) 74 +* {{code language="none"}}InteractiveLayerer.{{/code}} Detects layers according to the current layout, hence it reacts to the user's placement. 75 +))) 70 70 71 71 == Phase 3: Crossing Reduction == 72 72 ... ... @@ -101,6 +101,7 @@ 101 101 Implementations 102 102 )))|((( 103 103 * {{code language="none"}}LayerSweepCrossingMinmizer{{/code}}. Does several sweeps across the layers, minimizing the crossings between each pair of layers using a barycenter heuristic. Supports node successor constraints and layout groups. Node successor constraints require one node to appear before another node. Layout groups specify sets of nodes whose nodes must not be interleaved. See [[this page>>doc:Layer Sweep Crossing Minimization]] for more information. 110 +* {{code language="none"}}InteractiveCrossingMinimizer.{{/code}} Detects the order of nodes according to the current layout, hence it reacts to the user's placement. 104 104 ))) 105 105 106 106 == Phase 4: Node Placement == ... ... @@ -139,14 +139,15 @@ 139 139 ((( 140 140 Implementations 141 141 )))|((( 142 - 143 - 144 -{{code language="none"}} 145 -LinearSegmentsNodePlacer 146 -{{/code}} 147 - 148 -. Builds linear segments of nodes that should have the same y coordinate and tries to respect those linear segments. Linear segments are placed according to a barycenter heuristic. 149 +* {{code language="none"}}LinearSegmentsNodePlacer{{/code}}. Builds linear segments of nodes that should have the same y coordinate and tries to respect those linear segments. Linear segments are placed according to a barycenter heuristic. Inspired by\\ 150 +** ((( 151 +Georg Sander, A fast heuristic for hierarchical Manhattan layout. In //Proceedings of the Symposium on Graph Drawing (GD'95)//, LNCS vol. 1027, pp. 447-458, Springer, 1996. 149 149 ))) 153 +* {{code language="none"}}BKNodePlacer.{{/code}} ??? Inspired by\\ 154 +** ((( 155 +Ulrik Brandes and Boris Köpf, Fast and simple horizontal coordinate assignment. In //Proceedings of the 9th International Symposium on Graph Drawing (GD'01)//, LNCS vol. 2265, pp. 33-36, Springer, 2002. 156 +))) 157 +))) 150 150 151 151 == Phase 5: Edge Routing == 152 152 ... ... @@ -180,8 +180,10 @@ 180 180 ((( 181 181 Implementations 182 182 )))|((( 183 -* {{code language="none"}}ComplexSplineRouter{{/code}}. 184 -* {{code language="none"}}OrthogonalEdgeRouter{{/code}}. Routes edges orthogonally. Supports routing edges going into an eastern port around a node. Tries to minimize the width of the space between each pair of layers used for edge routing. 185 -* {{code language="none"}}PolylineEdgeRouter{{/code}}. 186 -* {{code language="none"}}impleSplineEdgeRouter{{/code}}. 191 +* {{code language="none"}}OrthogonalEdgeRouter{{/code}}. Routes edges orthogonally. Supports routing edges going into an eastern port around a node. Tries to minimize the width of the space between each pair of layers used for edge routing. Inspired by\\ 192 +** ((( 193 +Georg Sander, Layout of directed hypergraphs with orthogonal hyperedges. In //Proceedings of the 11th International Symposium on Graph Drawing (GD '03)//, LNCS vol. 2912, pp. 381-386, Springer, 2004. 187 187 ))) 195 +* {{code language="none"}}PolylineEdgeRouter{{/code}}. Simplest routing style that just inserts bend points at the position of long edge dummy nodes. 196 +* {{code language="none"}}SplineEdgeRouter{{/code}}. A simple method for routing the edges with splines. Uses the long edge dummy nodes as reference points for spline calculation. 197 +)))
- Confluence.Code.ConfluencePageClass[0]
-
- Id
-
... ... @@ -1,1 +1,1 @@ 1 -19989 581 +1998963 - URL
-
... ... @@ -1,1 +1,1 @@ 1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/19989 58/The Five Phases1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/1998963/The Five Phases