Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Modeling » Eclipse Layout Kernel » Junctions(Junctions missing where expected)
Junctions [message #1843442] Thu, 29 July 2021 21:17 Go to next message
H S is currently offline H SFriend
Messages: 3
Registered: July 2021
Junior Member
There's very limited documentation on junctions so reaching out to the experts here to better understand the feature.

Here's a simple graph that I created -

{
  id: "root",
  layoutOptions: { 'algorithm': 'layered' },
  children: [
    {
      id: "n1",
      width: 100,
      height: 50,
      layoutOptions: {
        "portConstraints": "FIXED_SIDE"
      },
      ports: [
        {
          id: "n1_p1",
          width: 5,
          height: 2,
          layoutOptions: {
            "port.side": "WEST"
          }
        },
        {
          id: "n1_p2",
          width: 5,
          height: 2,
          layoutOptions: {
            "port.side": "EAST"
          }
        }
      ],
      children: [
        {
          id: "n2",
          width: 30,
          height: 20,
          ports: [
            {
              id: "n2_p1",
              width: 5,
              height: 2,
              layoutOptions: {
                "port.side": "WEST"
              }
            },
            {
              id: "n2_p2",
              width: 5,
              height: 2,
              layoutOptions: {
                "port.side": "EAST"
              }
            }
          ],
          layoutOptions: {
            "portConstraints": "FIXED_SIDE"
          }
        }
      ],
      edges: [
        { id: "e1", sources: [ "n2_p1" ], targets: [ "n1_p1" ] },
        { id: "e2", sources: [ "n2_p1" ], targets: [ "n1_p2" ] },
        { id: "e3", sources: [ "n2_p1" ], targets: [ "n2_p2" ] }
      ]
    },
  ],
}


All three edges, e1, e2, and e3 are originating from the same port. I see that there's a junction point for one of the edges (unclear whether its for e1 or e2 because of the overlap). I would have expected a junction point for edge e3 as well. Is this junction missing i.e. bug or am I misunderstanding the concept behind junctions?

Re: Junctions [message #1843450 is a reply to message #1843442] Fri, 30 July 2021 07:09 Go to previous messageGo to next message
H S is currently offline H SFriend
Messages: 3
Registered: July 2021
Junior Member
Here's a link to working model if anyone wishes to try out.

Link to this model
Re: Junctions [message #1843481 is a reply to message #1843450] Mon, 02 August 2021 06:34 Go to previous messageGo to next message
Miro Spönemann is currently offline Miro SpönemannFriend
Messages: 78
Registered: March 2015
Location: Kiel, Germany
Member

Yes it looks like there's a missing junction point. Could you submit an issue at https://github.com/eclipse/elk ?

Junction points are a kind of workaround for layout algorithms not supporting hyperedges, i.e. edges with multiple sources or targets. The graph data structure has a concept for these (with sections of an edge layout), but the actual layout algorithm (ELK Layered) still works with regular point-to-point edges. A possible improvement could be to transform the point-to-point edge layout to a hyperedge layout after the algorithm has run.

https://rtsys.informatik.uni-kiel.de/elklive/json.html?compressedContent=N4KABGCWAmBcYCIBOB7FAXBAacYA2AhgJ4oCu6A8gA7qQoB2AzvMGAOQF4DmKSk6ACwC2beG0JEApkknQ2YAL44IAYwGQ80GfXgBtXBFARjUOInoBGbAeMB3GIPgWADM+UmwAyZC4D08AFY3GwgJMkoaOiYWEOMEKl50AGEGRnQkAkh6dEYEeAQAMQBJAA0AUQARAH0AZSKKsoRYpViEpBy9WMMu4xh8yyqqK3cPOwcBQJHRz29ffzAAJinRsPJqWlSY6Y94xIA6RhhJPMQAdTKagBUm7YgFHpbto1u+8wtBhetbsHtoRzAAssPF4fH54EseqFiOF1lFmGBnt9du0DkcTggygBBK43W73bb4jwAXSBag0WkkOjA+iekNM-U+QJMv3+AGZgt8QXNwRzbm0OtS6d1viZXgh6AtBsMhWM-hMAUzplywYtFStoWtIpsETKTMj0KjoMd8uccbrFDLHiLESKxRKPl8RRAWfLAeblfMIU6oSRNRtojrvXF+YbjYgsWag4TvtHpiS6asIv74TbtvqUkx0plsrl8sVytU6g1cQSHrF46NZFxJPCadNWGLJMMwIwyEgVDW9OZJUMEGASWB0AQkNWBbo3lK+0TFIqG2YEJJGS22x3a93J-2sIPh6O1+L3lRPv2Zz05-lJKzsMvSO3O9T173N9uR5Ixw+j9PYxAiTYrfGFEAA
Re: Junctions [message #1843491 is a reply to message #1843481] Mon, 02 August 2021 11:29 Go to previous message
H S is currently offline H SFriend
Messages: 3
Registered: July 2021
Junior Member
Reported here - https://github.com/eclipse/elk/issues/770

Previous Topic:LayeredLayoutProvider: keep order of nodes
Next Topic:How to use ELK layout on GEF editor
Goto Forum:
  


Current Time: Sat Jul 13 14:09:14 GMT 2024

Powered by FUDForum. Page generated in 0.03653 seconds
.:: Contact :: Home ::.

Powered by: FUDforum 3.0.2.
Copyright ©2001-2010 FUDforum Bulletin Board Software

Back to the top