Skip to main content


Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Sirius » How do I get this ELK layout in Sirius?
How do I get this ELK layout in Sirius? [message #1826544] Mon, 27 April 2020 00:40 Go to next message
Brandon Lewis is currently offline Brandon LewisFriend
Messages: 268
Registered: May 2012
Senior Member
The main purple diagram has a perfect layout for what I'm trying to do at the ELK site:

https://www.eclipse.org/elk/

Nearly every ELK layout I select in Sirius using Sirius 3.0 and Elk 0.5 look _nothing_ like the one on that page.

What magic have they done?

I have a digram with containers that have bordered nodes with edges between them and containers within containers and I can't get anything close to what they're getting in that picture.

The demonstrated graphs at this blog entry look great too - and they're demonstrating ELK in Sirius.

https://blog.obeo.fr/a-picture-is-worth-a-thousand-words

Is there some special consideration for containers and bordered nodes that one must consider?
Re: How do I get this ELK layout in Sirius? [message #1826600 is a reply to message #1826544] Mon, 27 April 2020 15:34 Go to previous messageGo to next message
Brandon Lewis is currently offline Brandon LewisFriend
Messages: 268
Registered: May 2012
Senior Member
I can actually hear ELK laughing at me... taunting me from deep within its code. :-)

My trails with Elk Layered (which seems to be the one I want, because it looks the least worse)

I'll think of things such as "I'd like to have my Port labels on the OUTSIDE of my container", but I have to set the option to INSIDE for it to work. What?

Elk draws container and subcontainer ports on top of each other - even if I set Port Label Spacing to 100.0! I have to manually move subcontainers so ports aren't on top of each other.

Or I'll tell ELK to set the Edge Routing to SPLINES, but it will choose to use POLYLINES with annoying bend points. Until I ask Sirius to Align the border nodes and then I'll get splines. Annoying bent polylines with BK Edge Straightening set to IMRPOVE_STAIGHTNESS, Straighness Priority set to 100. Bent poly lines are the result.

I get edges that go outside of my container! Bent poly lines that exist my container, then bend back around to connect to the outside of a port? What?

And I'll ask ELK to CENTER the Port Alignment - which it ignores and just places ports anywhere and everywhere.

None of these arguments seem to do what I'm asking them. I've set Thoroughness to 1 bazillion too. :-)

Is Elk known to mock and mess with the user? :-)

[Updated on: Mon, 27 April 2020 15:40]

Report message to a moderator

Re: How do I get this ELK layout in Sirius? [message #1826709 is a reply to message #1826600] Wed, 29 April 2020 10:17 Go to previous messageGo to next message
Steve Monnier is currently offline Steve MonnierFriend
Messages: 572
Registered: May 2011
Senior Member
Hello Brandon,

I have not worked on the Sirius/ELK integration, so my knowledge is a bit limited. However, what I understood is that some features that can be installed from the ELK have some impacts on GMF (An underlying graphical framework that Sirius relies on) that can break some integration between Sirius and ELK. I think that it will be easier that you start with the Obeo Designer Community Edition [1] bundle where we package Sirius with some other frameworks including ELK. The Sirius/ELK integration is better is the last version but it is still an experimental feature we are working on (well more my coworkers than me I have to admit). As it's experimental, you may need to go to the included Obeo Designer Community Edition update site in order to install more Sirius/ELF integration features.
On a diagram itself, it is not recommanded to activate the "snap to" function (On the properties view, it is in the "Rulers & Grid" tab) nor to have pinned elements (there is a pin.unpin tabbar action that list every diagram elements and there status) as these notiions are not yet supported in the Sirius/ELK integration.
Finally, you can also download the plugin "org.eclipse.sirius.diagram.elk.debug" from the Sirius git in order to check that the algorithm works properly.

Best regards,
Steve

[1] https://www.obeodesigner.com/en/download


Steve Monnier - Obeo Canada
Need training or professional services for Sirius?
http://www.obeodesigner.com/sirius
Re: How do I get this ELK layout in Sirius? [message #1826791 is a reply to message #1826709] Thu, 30 April 2020 14:12 Go to previous messageGo to next message
Brandon Lewis is currently offline Brandon LewisFriend
Messages: 268
Registered: May 2012
Senior Member
Thank you for the reply and help Steve!

I need to clarify some new findings from my previous post - hopefully some of my humor came across in light of the frustration. I have since found a set of parameters for ELK Layered that are getting me some reasonable results.

One completely unexpected issue I was having is I really hate the touch pad on the laptop I was using, a couple of days ago I noticed that when I used the laptop to scroll with a gesture, the mouse cursor was also moving, so I would scroll and change mouse position at the same time. That didn't seem to be that big of a deal - until I watched the moving mouse actually change values in some combo boxes in the options section as it hovered over them! So, at least some, but maybe not all of, the sense of randomness I was experiencing was literally due to data being changed randomly! Doh! And since I wasn't aware that it was happening, I probably was not getting a coherent set of parameter options.

As I mentioned, I have something that works well enough to demo to my team now and that's great. I am having to manually hit Arrange All up to 4 times in order to get the diagram fully laid out.. I can't find any options other that "Thoroughness" that would essentially tell the layout engine to "keep trying for a bit and do multiple iterations".
Re: How do I get this ELK layout in Sirius? [message #1838921 is a reply to message #1826791] Tue, 09 March 2021 14:32 Go to previous messageGo to next message
waqas junaid is currently offline waqas junaidFriend
Messages: 3
Registered: March 2021
Junior Member
I have install the ELK integration with Sirius and create the sample basicfamily example in Sirius, now I want to generate an auto layout of it, so for this think I add ELK layout for it but when I click on arrange all button nothing is happening to it I don't know why.
Need some serious help I desperately need it.
Re: How do I get this ELK layout in Sirius? [message #1838922 is a reply to message #1838921] Tue, 09 March 2021 14:48 Go to previous messageGo to next message
Pierre-Charles David is currently offline Pierre-Charles DavidFriend
Messages: 703
Registered: July 2009
Senior Member
We need more details to help you. What do you mean exactly by "I add ELK layout for it"?

If you haven't already, have a look at the document at https://www.eclipse.org/sirius/doc/specifier/diagrams/Diagrams.html#layout and the article at https://blog.obeo.fr/a-picture-is-worth-a-thousand-words.
These documents are not very detailed but may give you a hint on how to use ELK.
Make sure you are using the latest version of Sirius (6.4.1 at this time) as there were important improvements in it, but note however that this integration is still considered experimental at this point.


Pierre-Charles David - Obeo

Need training or professional services for Sirius?
http://www.obeodesigner.com/sirius
Re: How do I get this ELK layout in Sirius? [message #1839053 is a reply to message #1838922] Thu, 11 March 2021 23:28 Go to previous message
waqas junaid is currently offline waqas junaidFriend
Messages: 3
Registered: March 2021
Junior Member
Hello Pierre-Charles David
First of all thank you for your replay, I meant to say that I have added the ELK layered layout of mine basic family example, after I add ELK layered layout and click on the arrange all button nothing is happening to the layout of odesign.
I have check both of the websites the same process is repeated by me but there hasn't any difference in my layout.
Help me bro how to solve it.
Previous Topic:Trigger 'Arrange All'
Next Topic:Creating a blank diagram
Goto Forum:
  


Current Time: Tue Apr 23 08:58:23 GMT 2024

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

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

Back to the top