kieler / klighd-vscode

Eclipse Public License 2.0
8 stars 6 forks source link

Layout breaks when updating layout repeatedly #127

Open Eddykasp opened 1 year ago

Eddykasp commented 1 year ago

Expected diagram as drawn initially: issue850

Clicking on any element except a port or clicking on layout diagram causes the following shifted result. This can be repeated to continuously shift the elements. issue850-broken

The following elkt graph illustrates this problem.

elk.algorithm: layered

  node n1 {
      layout [size: 30, 30]
      portLabels.placement: "[OUTSIDE, NEXT_TO_PORT_IF_POSSIBLE]"
      portConstraints: FIXED_SIDE
      insideSelfLoops.activate: true

      label "1"
      port p1 {
        layout [size:3,3]
        ^port.side: EAST

        label "port east"
      }

      port p5 {
        layout [size:3,3]
        ^port.side: EAST

        label "port east two"
      }

      port p2 {
        layout [size:3,3]
        ^port.side: WEST
        label "port west"
      }
      port p3 {
        layout [size:3,3]
        ^port.side:NORTH
        label "port north"
      }
      port p4 {
        layout [size:3,3]
        ^port.side:SOUTH
        label "port south"        
      }
      port p6 {
        layout [size:3,3]
        ^port.side:SOUTH
        label "port south two"        
      }
  }

  node n2 {
      layout [size: 30, 30]
      portLabels.placement: "[OUTSIDE, NEXT_TO_PORT_IF_POSSIBLE]"
      portConstraints: FIXED_SIDE

      label "2" 
      port p1 {
        ^port.side: WEST
      }
  }

  edge n1.p1 -> n1.p2 {
   insideSelfLoops.yo: true
  }
  edge n1.p4 -> n1.p3
  edge n1.p6 -> n2.p1

  edge n1.p5 -> n2.p1