Changes for page KIML Layout Options

Last modified by Alexander Schulz-Rosengarten on 2023/09/11 16:17

From version 30.1
edited by csp
on 2015/02/18 12:07
Change comment: There is no comment for this version
To version 33.1
edited by uru
on 2023/07/06 14:36
Change comment: Renamed back-links.

Summary

Details

Page properties
Parent
... ... @@ -1,0 +1,1 @@
1 +KIELER.Home.Discontinued Projects.Infrastructure for Meta Layout (KIML).WebHome
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.csp
1 +XWiki.uru
Content
... ... @@ -213,7 +213,7 @@
213 213  )))
214 214  |(% colspan="1" %)(% colspan="1" %)
215 215  (((
216 -
216 +[[Port Spacing>>doc:||anchor="portSpacing"]]
217 217  )))|(% colspan="1" %)(% colspan="1" %)
218 218  (((
219 219  de.cau.cs.kieler.portSpacing
... ... @@ -229,7 +229,7 @@
229 229  )))
230 230  |(% colspan="1" %)(% colspan="1" %)
231 231  (((
232 -Port Alignment
232 +[[Port Alignment>>doc:||anchor="portAlignment"]]
233 233  )))|(% colspan="1" %)(% colspan="1" %)
234 234  (((
235 235  de.cau.cs.kieler.portAlignment
... ... @@ -862,7 +862,7 @@
862 862  
863 863  ==== Available Algorithms and Libraries ====
864 864  
865 -* **The [[KLay Project>>doc:Layout Algorithms (KLay)]]** - Java implementations of standard layout approaches, augmented with special processing of graph features such as ports and labels.
865 +* **The [[KLay Project>>doc:KIELER.Home.Discontinued Projects.Layout Algorithms (KLay).WebHome]]** - Java implementations of standard layout approaches, augmented with special processing of graph features such as ports and labels.
866 866  * **Randomizer** - Distributes the nodes randomly; not very useful, but it can show how important a good layout is for understanding a graph.
867 867  * (((
868 868  **Box Layout** - Ignores edges, places all nodes in rows. Can be used to layout collections of unconnected boxes, such as Statechart regions.
... ... @@ -886,11 +886,11 @@
886 886  The following diagram types are predefined:
887 887  
888 888  * **General** - This type is automatically assigned to all diagrams for which no specific type is declared. A layout algorithm that has the highest priority on the //General// diagram type is taken as the default algorithm when no further information on a diagram is available to KIML.
889 -* **State Machine** - All kinds of state machines, automata, and activity diagrams. Examples: [[doc:SCCharts SyncCharts]], UML Activity diagrams.
890 -* **Data Flow Diagram** - Actor-oriented diagrams, where connections are mostly done between //ports// of nodes. These diagrams can only be handled properly by very special layout algorithms, such as those developed in the [[KLay project>>doc:Layout Algorithms (KLay)]].
889 +* **State Machine** - All kinds of state machines, automata, and activity diagrams. Examples: [[doc:KIELER.SyncCharts]], UML Activity diagrams.
890 +* **Data Flow Diagram** - Actor-oriented diagrams, where connections are mostly done between //ports// of nodes. These diagrams can only be handled properly by very special layout algorithms, such as those developed in the [[KLay project>>doc:KIELER.Home.Discontinued Projects.Layout Algorithms (KLay).WebHome]].
891 891  * **Class Diagram** - Class diagrams such as Ecore diagrams for the [[EMF>>url:http://www.eclipse.org/modeling/emf/||shape="rect"]] or UML Class diagrams.
892 892  * **Use Case Diagram** - Use case diagrams as defined by the UML.
893 -* **Unconnected Boxes** - Sets of nodes that have no connections and are treated as resizable boxes. This is related to mathematical [[packing problems>>url:http://en.wikipedia.org/wiki/Packing_problem||shape="rect"]]. Example: Regions in [[doc:SCCharts SyncCharts]].
893 +* **Unconnected Boxes** - Sets of nodes that have no connections and are treated as resizable boxes. This is related to mathematical [[packing problems>>url:http://en.wikipedia.org/wiki/Packing_problem||shape="rect"]]. Example: Regions in [[doc:KIELER.SyncCharts]].
894 894  
895 895  === ===
896 896  
... ... @@ -923,10 +923,12 @@
923 923  
924 924  === ===
925 925  
926 -{{id name="addPortSpace"/}}Additional Port SpaceThis option controls additional port space left around the set of ports on each side:
926 +{{id name="addPortSpace"/}}Additional Port SpaceThis option controls the usable space for ports on each side:
927 927  
928 928  [[image:attach:addPortSpace.png]]
929 929  
930 +If the option is not set, the value of [[Port Spacing>>doc:||anchor="portSpacing"]] is used instead for all four components.
931 +
930 930  This option is only relevant if port constraints are {{code language="none"}}FREE{{/code}}, {{code language="none"}}FIXED_SIDE{{/code}}, or {{code language="none"}}FIXED_ORDER{{/code}}. If size constraints include {{code language="none"}}PORTS{{/code}}, the additional port space, together with the port spacing and the size of ports, determines a lower bound on the node size.
931 931  
932 932  === ===
... ... @@ -957,11 +957,32 @@
957 957  
958 958  === ===
959 959  
962 +{{id name="portAlignment"/}}Port AlignmentThe port alignment controls how ports are distributed over their respective edge.
963 +
964 +This option is only relevant if port constraints are {{code language="none"}}FREE{{/code}}, {{code language="none"}}FIXED_SIDE{{/code}}, or {{code language="none"}}FIXED_ORDER{{/code}}.
965 +
966 +The following settings are possible:
967 +
968 +* {{code language="none"}}UNDEFINED{{/code}}
969 +Defaults to {{code language="none"}}JUSTIFIED{{/code}}.
970 +* {{code language="none"}}JUSTIFIED{{/code}}
971 +Distributes the ports evenly over the whole usable space (for usable space, see [[additional port space>>doc:||anchor="addPortSpace"]]).
972 +* {{code language="none"}}BEGIN{{/code}}
973 +Places the ports at top-/leftmost position with [[port spacing>>doc:||anchor="portSpacing"]] between them.
974 +* {{code language="none"}}CENTER{{/code}}
975 +Places the ports centered in the usable space with port spacing between them.
976 +* {{code language="none"}}END{{/code}}
977 +Places the ports at bottom-/rightmost position with port spacing between them.
978 +
979 +Port alignment can also be set as specialized options {{code language="none"}}portAlignment.{north|south|east|west{{/code}}}. These options overwrite the general policy for the respective side. Setting one of these to {{code language="none"}}UNDEFINED{{/code}} defaults it to the general port alignment.
980 +
981 +=== ===
982 +
960 960  {{id name="portAnchor"/}}Port Anchor OffsetSince ports have a size, we need a concrete point inside the port that edges should start or end in. In KLay Layered, this is referred to as the //port anchor//. By default, the center of each port is used as its port anchor, but this behavior can be overridden by setting an explicit port anchor.
961 961  
962 962  In the following example, the port anchor of the left port was moved upwards, while the port anchor of the second port was moved downwards:
963 963  
964 -[[image:attach:KLay Layered Layout Options@port_anchors.png]]
987 +[[image:attach:KIELER.KLay Layered Layout Options@port_anchors.png]]
965 965  
966 966  === ===
967 967  
addPortSpace.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Size
... ... @@ -1,0 +1,1 @@
1 +20.2 KB
Content
comment_box.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Size
... ... @@ -1,0 +1,1 @@
1 +5.5 KB
Content
edge_routing.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Size
... ... @@ -1,0 +1,1 @@
1 +57.8 KB
Content
layout_algorithm.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.XWikiGuest
Size
... ... @@ -1,0 +1,1 @@
1 +20.0 KB
Content
Confluence.Code.ConfluencePageClass[0]
Id
... ... @@ -1,1 +1,1 @@
1 -10751222
1 +7111094
URL
... ... @@ -1,1 +1,1 @@
1 -https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/10751222/KIML Layout Options
1 +https://rtsys.informatik.uni-kiel.de/confluence//wiki/spaces/KIELER/pages/7111094/KIML Layout Options