I have some questions, about GoLinks and how to customize them so they fit my requirements.
I’m making trying to realize a graphical notation, where the most important rule is, that nodes do not overlap with each other and with links. I already solved the nodes part, now I by the links part.
My links called here relationships must support the following actions: 1. Make new relationship
2. Relink relationship
3. Reshape relationship path
In the implementation of these functionalities I ran into some problems. Hopefully you can help me in some way.
I have the set the AvoidsNodes = true so that when I do the 1.Make a new relationship action the link goes around any nodes.
When I intend to draw a link form Source to Target it looks like this:
When I actually draw it, it looks like this:![|401x111](upload://93YzZ6F884ZJQiTVhwYR7i4TEMG.jpeg)
Which is ok. Now I now, that when I move a node, the link won’t automatically change, so I must call the CalculateStroke() method. When I move the Must be allowed node one grid box to the left, the link route changes, appropriately:
Which isn’t good at all, because there is overlapping in the diagram. How can I fix this? Why won’t the link be rerouted from the upper edge of the Source node? I use GoBoxNode as the parent of my nodes. I also set LinkPointsSpread = true and IsValidDuplicateLinks = true at the Port of my nodes.
When I want to do the 3. Reshape relationship path action I encounter a problem, so that the middle section of my orthogonal link can be moved on any of the 2 nodes, which it connects.
I have problems by 2. Relink relationship action.
Here I really don’t what to do, have you any suggestions?
That’s all for now, thank you for your time and effort.
Have a nice day!