diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle.elkt deleted file mode 100644 index 64dcd80..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle.elkt +++ /dev/null @@ -1,45 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Circle - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -The nodes are forced in a cycle with n1 in the middle layer. -*/ - -// elkex:graph -interactiveLayout: true -elk.direction:RIGHT - -node n1 { - layering.layerChoiceConstraint: 1 - label "n1" -} -node n2 { - label "n2" -} -node n3 { - label "n3" -} -edge n1 -> n2 -edge n2 -> n3 -edge n3 -> n1 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle_pseudo_positions.elkt deleted file mode 100644 index 6b6eacc..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_circle_pseudo_positions.elkt +++ /dev/null @@ -1,43 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Circle (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -The nodes are forced in a cycle with n1 in the middle layer. -*/ - -// elkex:graph -elk.direction:RIGHT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE - -node n1 { - layout [position: 100, 0] - label "n1" -} -node n2 { - layout [position: 0, 0] - label "n2" -} -node n3 { - layout [position: 200, 0] - label "n3" -} -edge n1 -> n2 -edge n2 -> n3 -edge n3 -> n1 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy.elkt deleted file mode 100644 index 30f4fc5..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy.elkt +++ /dev/null @@ -1,60 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Hierarchy - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -Expected result after interactive layout: -
- ________________
-|n2 ____    ____  |   ____
-|  |n2_2|__|n2_1| |__|n1  |
-|  |____|  |____| |  |____|
-|_________________|
-
-*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT - -node n1 { - label "n1" -} - -node n2 { - elk.direction: RIGHT - layering.layerChoiceConstraint: 0 - label "n2" - node n2_1 { - label "n2_1" - } - - node n2_2 { - layering.layerChoiceConstraint: 0 - label "n2_2" - } - - edge n2_1 -> n2_2 -} - -edge n1 -> n2 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection.elkt deleted file mode 100644 index e41ec8d..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection.elkt +++ /dev/null @@ -1,97 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Hierarchy With All Directions. - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT - -node n1 { - interactiveLayout: true - elk.direction: DOWN - separateConnectedComponents: false - label "n1" - - node n11 { - interactiveLayout: true - elk.direction: UP - label "n11" - - node n111 { - label "n111" - } - node n112 { - label "n112" - } - edge n111 -> n112 - } - node n12 { - crossingMinimization.positionChoiceConstraint: 0 - label "n12" - } -} -node n2 { - label "n2" -} -node n3 { - label "n3" -} -node n4 { - label "n4" -} -node n5 { - label "n5" -} -node n6 { - interactiveLayout: true - separateConnectedComponents: false - elk.direction: LEFT - label "n6" - - node n61 { - interactiveLayout: true - elk.direction: RIGHT - label "n61" - - node n611 { - label "n611" - } - node n612 { - label "n612" - } - } - node n62 { - layering.layerChoiceConstraint: 1 - label "n62" - } -} - -edge n2 -> n6 -edge n1 -> n6 -edge n4 -> n6 -edge n1 -> n3 -edge n6 -> n3 -edge n2 -> n5 -edge n5 -> n1 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection_pseudo_positions.elkt deleted file mode 100644 index 209a0fb..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchyDirection_pseudo_positions.elkt +++ /dev/null @@ -1,99 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Hierarchy with all directions (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -*/ - -// elkex:graph -elk.direction: RIGHT - - -node n1 { - elk.direction: DOWN - cycleBreaking.strategy: INTERACTIVE - layering.strategy: INTERACTIVE - crossingMinimization.semiInteractive: true - separateConnectedComponents: false - label "n1" - - node n11 { - layout [position: 0, 100] // y coordinate since DOWN - elk.direction: UP - cycleBreaking.strategy: INTERACTIVE - layering.strategy: INTERACTIVE - crossingMinimization.semiInteractive: true - separateConnectedComponents: false - label "n11" - - node n111 { - label "n111" - } - node n112 { - label "n112" - } - edge n111 -> n112 - } - node n12 { - layout [position: 0, 0] - label "n12" - } -} -node n2 { - label "n2" -} -node n3 { - label "n3" -} -node n4 { - label "n4" -} -node n5 { - label "n5" -} -node n6 { - separateConnectedComponents: false - cycleBreaking.strategy: INTERACTIVE - layering.strategy: INTERACTIVE - elk.direction: LEFT - label "n6" - - node n61 { - layout [position: 100, 0] // x-coordinate for LEFT layout - elk.direction: RIGHT - label "n61" - - node n611 { - label "n611" - } - node n612 { - label "n612" - } - } - node n62 { - layout [position: 0, 0] - label "n62" - } -} - -edge n2 -> n6 -edge n1 -> n6 -edge n4 -> n6 -edge n1 -> n3 -edge n6 -> n3 -edge n2 -> n5 -edge n5 -> n1 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy_pseudo_positions.elkt deleted file mode 100644 index 18061c9..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_hierarchy_pseudo_positions.elkt +++ /dev/null @@ -1,64 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Hierarchy (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -Expected result after interactive layout: - -
- ________________
-|n2 ____    ____  |   ____
-|  |n2_2|__|n2_1| |__|n1  |
-|  |____|  |____| |  |____|
-|_________________|
-
- -*/ - -// elkex:graph -elk.direction: RIGHT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE - -node n1 { - layout [position: 100, 0] - label "n1" -} - -node n2 { - layout [position: 0, 0] - elk.direction: RIGHT - cycleBreaking.strategy: INTERACTIVE - layering.strategy: INTERACTIVE - label "n2" - - node n2_1 { - layout [position: 100, 0] - label "n2_1" - } - - node n2_2 { - layout [position: 0, 0] - layering.layerChoiceConstraint: 0 - label "n2_2" - } - - edge n2_1 -> n2_2 -} - -edge n1 -> n2 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor.elkt deleted file mode 100644 index a9c558a..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor.elkt +++ /dev/null @@ -1,71 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Motor Reversed - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -Visualizes the layout problem from the motor SCChart. If a new edge from Accel to CheckMin is added nodes might -change their positions which is undesired. -*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT - -node Pause { - crossingMinimization.positionChoiceConstraint: 0 - layering.layerChoiceConstraint: 3 - label "Pause" -} -node Accel { - layering.layerChoiceConstraint: 2 - crossingMinimization.positionChoiceConstraint: 0 - label "Accel" -} -node Deccel { - layering.layerChoiceConstraint: 2 - crossingMinimization.positionChoiceConstraint: 1 - label "Deccel" -} -node CheckMax { - crossingMinimization.positionChoiceConstraint: 0 - layering.layerChoiceConstraint: 1 - label "CheckMax" -} -node CheckMin { - crossingMinimization.positionChoiceConstraint: 1 - layering.layerChoiceConstraint: 1 - label "CheckMin" -} -node SetPeriod { - label "SetPeriod" -} -edge Pause -> Accel -edge Pause -> Deccel -edge Accel -> CheckMax -edge Deccel -> CheckMin -// edge Accel -> CheckMin -edge CheckMax -> SetPeriod -edge CheckMin -> SetPeriod -edge SetPeriod -> Pause -edge SetPeriod -> Pause -edge CheckMax -> SetPeriod \ No newline at end of file diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor_pseudo_positions.elkt deleted file mode 100644 index f31c3e2..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_motor_pseudo_positions.elkt +++ /dev/null @@ -1,69 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ - -/* -// elkex:category -Interactive > Layered - -// elkex:label -Motor reversed (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -Visualizes the layout problem from the motor SCChart. -If a new edge from Accel to CheckMin is added nodes might change their positions which is undesired. -*/ - -// elkex:graph -elk.direction: RIGHT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE -crossingMinimization.semiInteractive: true -separateConnectedComponents: false - -node Pause { - layout [position: 300, 0] - elk.^position: "(300.0,0.0)" - label "Pause" -} -node Accel { - layout [position: 200, 0] - elk.^position: "(200.0,0.0)" - label "Accel" -} -node Deccel { - layout [position: 200, 100] - elk.^position: "(200.0,100.0)" - label "Deccel" -} -node CheckMax { - layout [position: 100, 0] - elk.^position: "(100.0,0.0)" - label "CheckMax" -} -node CheckMin { - layout [position: 100, 100] - elk.^position: "(100.0,100.0)" - label "CheckMin" -} -node SetPeriod { - label "SetPeriod" -} -edge Pause -> Accel -edge Pause -> Deccel -edge Accel -> CheckMax -edge Deccel -> CheckMin -// edge Accel -> CheckMin -edge CheckMax -> SetPeriod -edge CheckMin -> SetPeriod -edge SetPeriod -> Pause -edge SetPeriod -> Pause -edge CheckMax -> SetPeriod \ No newline at end of file diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes.elkt deleted file mode 100644 index 0bc98a5..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes.elkt +++ /dev/null @@ -1,40 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Nodes Sizes - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and more. - -*/ - -// elkex:graph -interactiveLayout: true -separateConnectedComponents: false // Has to be set to work properly -elk.direction: RIGHT -node n1{ - layout [size: 200, 200] - positionChoiceConstraint: 0 - label "n1" -} - -node n2 { - - positionChoiceConstraint: 1 - label "n2" -} diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes_pseudo_positions.elkt deleted file mode 100644 index ea48fc6..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_nodeSizes_pseudo_positions.elkt +++ /dev/null @@ -1,35 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Nodes Sizes (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. -*/ - -// elkex:graph -elk.direction: RIGHT -// Has to be set to false otherwise separate conencted graphs are not on the same layer grid. -separateConnectedComponents: false -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE -node n1 { - layout [position: 0, 0 size: 200, 200] - label "n1" -} - -node n2 { - layout [position: 100, 0] - label "n2" -} diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents.elkt deleted file mode 100644 index 4d0519b..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents.elkt +++ /dev/null @@ -1,64 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Separate Components - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -One has to make sure that separate connected components is disabled by the interactiveLayout property. -Otherwise position and layer constraints become confusing. - -Expected layout: - -
- ____    ____
-|n3  |  |n4  |
-|____|  |____|
-         ____    ____
-        |n2  |<_|n1  |
-        |____|  |____|
-
-*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT -separateConnectedComponents: false -node n1 { - layering.layerChoiceConstraint: 3 - crossingMinimization.positionChoiceConstraint: 0 - label "n1" -} -node n2 { - crossingMinimization.positionChoiceConstraint: 0 - layering.layerChoiceConstraint: 2 - label "n2" -} -node n3 { - layering.layerChoiceConstraint: 1 - crossingMinimization.positionChoiceConstraint: 0 - label "n3" -} -node n4 { - layering.layerChoiceConstraint: 2 - crossingMinimization.positionChoiceConstraint: 0 - label "n4" -} -edge n1 -> n2 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents_pseudo_positions.elkt deleted file mode 100644 index d67ca32..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_separateComponents_pseudo_positions.elkt +++ /dev/null @@ -1,62 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Separate Components (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -One has to make sure that separate connected components is disabled by the interactiveLayout property. -Otherwise position and layer constraints become confusing. - -Expected layout: - -
- ____    ____
-|n3  |  |n4  |
-|____|  |____|
-         ____    ____
-        |n2  |<_|n1  |
-        |____|  |____|
-
- -*/ - -// elkex:graph -elk.direction: RIGHT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE -crossingMinimization.semiInteractive: true -separateConnectedComponents: false -node n1 { - layout [position: 300, 100] - elk.^position: "(300.0,100.0)" - label "n1" -} -node n2 { - layout [position: 200, 100] - elk.^position: "(200.0,100.0)" - label "n2" -} -node n3 { - layout [position: 100, 0] - elk.^position: "(100.0,0.0)" - label "n3" -} -node n4 { - layout [position: 200, 0] - elk.^position: "(200.0,0.0)" - label "n4" -} -edge n1 -> n2 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest.elkt deleted file mode 100644 index dd4accf..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest.elkt +++ /dev/null @@ -1,61 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Direction Test - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - - -Used to test different directions and the available drag and drop spots - -Expected layout: - -
- ____ <_ ____ <_ ____
-|n3  |<_|n2  |<_|n1  |
-|____| _|____|  |____|
- ____ | 
-|n4  |< 
-|____|   
-
-*/ - -// elkex:graph -interactiveLayout: true -elk.direction: LEFT -node n1 { - label "n1" -} -node n2 { - label "n2" -} -node n3 { - label "n3" -} -node n4 { - label "n4" -} - - -edge n1 -> n2 -edge n1 -> n2 -edge n2 -> n3 -edge n2 -> n3 -edge n2 -> n4 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest_pseudo_positions.elkt deleted file mode 100644 index c3b2b7a..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_simpleDirectionTest_pseudo_positions.elkt +++ /dev/null @@ -1,59 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Direction Test (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -Expected layout: - -
- ____ <_ ____ <_ ____
-|n3  |<_|n2  |<_|n1  |
-|____| _|____|  |____|
- ____ | 
-|n4  |< 
-|____|   
-
- -Change the direction or introduce pseudo positions to change the layout. - -*/ - -// elkex:graph -elk.direction: LEFT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE -crossingMinimization.semiInteractive: true -separateConnectedComponents: false -node n1 { - label "n1" -} -node n2 { - label "n2" -} -node n3 { - label "n3" -} -node n4 { - label "n4" -} - - -edge n1 -> n2 -edge n1 -> n2 -edge n2 -> n3 -edge n2 -> n3 -edge n2 -> n4 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake.elkt deleted file mode 100644 index 66a3ff9..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake.elkt +++ /dev/null @@ -1,84 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021-2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Snake - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -Layer constraints can be used to create long edges. -*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT - -node n1 { - label "n1" -} -node n2 { - label "n2" -} -node n3 { - layering.layerChoiceConstraint: 0 - label "n3" -} -node n4 { - label "n4" -} -node n5 { - layering.layerChoiceConstraint: 0 - label "n5" -} -node n6 { - label "n6" -} -node n7 { - layering.layerChoiceConstraint: 0 - label "n7" -} -node n8 { - label "n8" -} -node n9 { - label "n9" -} -node n10 { - label "n10" -} -node n11 { - layering.layerChoiceConstraint: 0 - label "n11" -} -node n12 { - crossingMinimization.positionChoiceConstraint: 1 - layering.layerChoiceConstraint: 3 - label "n12" -} -edge n1 -> n2 -edge n2 -> n3 -edge n3 -> n4 -edge n4 -> n5 -edge n5 -> n6 -edge n6 -> n7 -edge n7 -> n8 -edge n8 -> n9 -edge n9 -> n10 -edge n10 -> n11 -edge n11 -> n12 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake_pseudo_positions.elkt deleted file mode 100644 index 0e6475e..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_snake_pseudo_positions.elkt +++ /dev/null @@ -1,102 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2022 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Snake (Pseudo Positions) - -// elkex:doc -Pseudo positions are set which emulate what would be done by the interactiveLayout property. - -Layer constraints can be used to create long edges. -However, vertical order does not work here. -*/ - -// elkex:graph -elk.direction: RIGHT -cycleBreaking.strategy: INTERACTIVE -layering.strategy: INTERACTIVE -crossingMinimization.semiInteractive: true -separateConnectedComponents: false - -node n1 { - layout [position: 0, 0] - elk.^position: "(0.0,0.0)" - label "n1" -} -node n2 { - layout [position: 100, 0] - elk.^position: "(100.0,0.0)" - label "n2" -} -node n3 { - layout [position: 0, 100] - elk.^position: "(0.0,100.0)" - label "n3" -} -node n4 { - layout [position: 200, 0] - elk.^position: "(200.0,0.0)" - label "n4" -} -node n5 { - layout [position: 0, 200] - elk.^position: "(0.0,200.0)" - label "n5" -} -node n6 { - layout [position: 300, 0] - elk.^position: "(300.0,0.0)" - label "n6" -} -node n7 { - layout [position: 0, 300] - elk.^position: "(0.0,300.0)" - label "n7" -} -node n8 { - layout [position: 400, 0] - elk.^position: "(400.0,0.0)" - label "n8" -} -node n9 { - layout [position: 500, 0] - elk.^position: "(500.0,0.0)" - label "n9" -} -node n10 { - layout [position: 500, 0] - elk.^position: "(500.0,0.0)" - // Node 10 is forced in the next layer since it cannot be in the same layer a n9 - label "n10" -} -node n11 { - layout [position: 0, 400] - elk.^position: "(0.0,400.0)" - label "n11" -} -node n12 { - layout [position: 300, 100] - elk.^position: "(300.0,100.0)" - label "n12" -} -edge n1 -> n2 -edge n2 -> n3 -edge n3 -> n4 -edge n4 -> n5 -edge n5 -> n6 -edge n6 -> n7 -edge n7 -> n8 -edge n8 -> n9 -edge n9 -> n10 -edge n10 -> n11 -edge n11 -> n12 diff --git a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_sortingTask_pseudo_positions.elkt b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_sortingTask_pseudo_positions.elkt index 9e57f1c..478318b 100644 --- a/examples/user-hints/interactive-constraints/interactiveLayeredLayout_sortingTask_pseudo_positions.elkt +++ b/examples/user-hints/interactive-constraints/interactiveLayeredLayout_sortingTask_pseudo_positions.elkt @@ -15,12 +15,7 @@ Interactive > Layered Sorting task (Pseudo Positions) // elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. +This model illustrates how setting positions, e.g. from a previous layout run, can be used together with interactive layout strategies. This model was used as a sorting task. However, the vertical sorting does not work here. diff --git a/examples/user-hints/interactive-constraints/interactiveLayereredLayout_layerConstraint.elkt b/examples/user-hints/interactive-constraints/interactiveLayereredLayout_layerConstraint.elkt deleted file mode 100644 index 03e8033..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayereredLayout_layerConstraint.elkt +++ /dev/null @@ -1,39 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -No Empty Layers - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -Only the relative constraints are relevant. No empty layers can be created. - -*/ - -// elkex:graph -interactiveLayout: true -elk.direction: RIGHT -// Layer and position constraints are relative -node n1 { - crossingMinimization.positionChoiceConstraint: 0 - layering.layerChoiceConstraint: 999999999 -} -node n2 - -edge n1 -> n2 \ No newline at end of file diff --git a/examples/user-hints/interactive-constraints/interactiveLayout_mixedHierarchy.elkt b/examples/user-hints/interactive-constraints/interactiveLayout_mixedHierarchy.elkt deleted file mode 100644 index 1581c78..0000000 --- a/examples/user-hints/interactive-constraints/interactiveLayout_mixedHierarchy.elkt +++ /dev/null @@ -1,47 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Layered - -// elkex:label -Mixed Interactive Layout - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies -for the different phases. - -Rectpacking interactive mixed with layered interactive works. - -*/ - -// elkex:graph -interactiveLayout: true -algorithm: rectpacking -expandNodes: false -aspectRatio: 1.908321167883212 -// Simple example for rectpacking and layered interactive in the same model. To be used in Keith -node n11 -node n12 -node n13 { - interactiveLayout: true - elk.direction: RIGHT - separateConnectedComponents: false - label "Test" - node n1 - node n2 { - layering.layerChoiceConstraint: 0 // set to 1 to have effect - crossingMinimization.positionChoiceConstraint: 0 - } -} diff --git a/examples/user-hints/interactive-constraints/interactiveRectpacking_hierarchy.elkt b/examples/user-hints/interactive-constraints/interactiveRectpacking_hierarchy.elkt deleted file mode 100644 index 540ed65..0000000 --- a/examples/user-hints/interactive-constraints/interactiveRectpacking_hierarchy.elkt +++ /dev/null @@ -1,55 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Rectpacking - -// elkex:label -Hierarchy - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies. - -Expected the following drawing using interactive layout: -
- _____________
-|n2____  ____  |
-| |n2_2||n2_1| |
-| |____||____| | 
-|______________|
- ____
-|n1  |
-|____|
-
-
-*/ - -// elkex:graph -algorithm: rectpacking -interactiveLayout: true - - - -node n1 - -node n2 { - algorithm: rectpacking - desiredPosition: 0 - - node n2_1 - - node n2_2 { - desiredPosition: 0 - } -} \ No newline at end of file diff --git a/examples/user-hints/interactive-constraints/interactiveRectpacking_oneBigNode.elkt b/examples/user-hints/interactive-constraints/interactiveRectpacking_oneBigNode.elkt deleted file mode 100644 index ec9e368..0000000 --- a/examples/user-hints/interactive-constraints/interactiveRectpacking_oneBigNode.elkt +++ /dev/null @@ -1,59 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2021 Kiel University and others. - * - * This program and the accompanying materials are made available under the - * terms of the Eclipse Public License 2.0 which is available at - * http://www.eclipse.org/legal/epl-2.0. - * - * SPDX-License-Identifier: EPL-2.0 - *******************************************************************************/ -/* -// elkex:category -Interactive > Rectpacking - -// elkex:label -Big Node - -// elkex:doc -This can only be used within an editor that configures two consecutive layout runs, e.g. KIELER, Keith -but not Elklive. - -The interactiveLayout property allows to move nodes in diagram view that supports this (e.g. Klighd VSCode extension). -Internally it sets via a GraphVisitor all other necessary properties, such as interactive and interactive strategies. - -Behavior of one big node next to several small ones. - -All small nodes should have enough space to be under or next to the big node. -It depends on the aspect ratio whether this is the case - -*/ - -// elkex:graph -algorithm: rectpacking -interactiveLayout: true -aspectRatio: 1.3 -node n1{ - layout [size: 20, 20] - -} -node n2 { - layout [size: 220, 200] - desiredPosition: 0 -} -node n3{ - layout [size: 20, 20] - -} -node n4{ - layout [size: 20, 20] - -} -node n5{ - layout [size: 20, 20] -} -node n6 { - layout [size: 20, 20] -} -node n7{ - layout [size: 20, 20] -}