Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic ArrowAnchoring (again) (Read 2711 times)
Stuart
Junior Member
**
Offline


Short, fat and bald, that's
me.

Posts: 64
Location: Lincs, UK
Joined: Sep 5th, 2008
ArrowAnchoring (again)
Sep 11th, 2008 at 8:43am
Print Post  
Keeping arrows anchored when calling ArrangeDiagram really limits your chance of getting something user friendly but the way things work ATM it's easy to find you between a rock and a hard place.

Let be give you an example.

I'm looking at creating a GUI for viewing WorkFlow processes. One of the 'rules' we're trying to use means that a 'decision' node cannot have the 'yes' arc and the 'no' arc flow from the same point. If we use your 'Decision2In2Out' AnchorPattern as a reference then the 'yes' arc must flow from the point at 6 o'clock and the 'no' arc from the point at 3 o'clock. Still with me?

Now, when creating my diagram I can enforce this rule, but if I call ArrangeDiagram without first setting ArrowAnchoring to ancKeep there is a better than good chance that the system will move the out-going arcs to flow from the same point (this always happens with my examples).

Obviously, I can set ArrowAnchoring to ancKeep but that then applies to all nodes and, as I've already said, this really messes up the Layout class's ability to generate something that you'd want to look at.

FWIW, it seems to me that what is lacking is an ArrowAnchoring property on the node. By default this would be set to ancIgnore for all new nodes. However, if it was set to ancKeep on a node then, regardless of the setting of ArrowAnchoring on the layout object, the anchors on that object would not be changed.

With this option, I get to give the Layout classes the best chance of producing something worth looking at whilst maintaining the rules we have in place.

Given that I'm just using the demo version, my diagrams are pretty limited, but I'm sure that there will be similar issues with other elements when I'm able to explore further.

Obviously, this is just a thought of mine and, given that I've not even bought anything from you yet, you are free to ignore it, but I do hope you at least consider this.

  

-- &&Stuart
Back to top
YIM  
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: ArrowAnchoring (again)
Reply #1 - Sep 11th, 2008 at 12:28pm
Print Post  
As I understand it, you need to apply a constraint for the position of pair of linked nodes, e.g. enforcing the layout class to arrange them left-to-right or top-to-bottom? Otherwise, just preserving the anchor points wont make the layout prettier, say if the link goes out from the right side of a node and then makes an U turn to go to a node on the left.

Stoyan
  
Back to top
 
IP Logged
 
Stuart
Junior Member
**
Offline


Short, fat and bald, that's
me.

Posts: 64
Location: Lincs, UK
Joined: Sep 5th, 2008
Re: ArrowAnchoring (again)
Reply #2 - Sep 11th, 2008 at 12:32pm
Print Post  
I'm not too sure I understood that.

Sorry.
  

-- &&Stuart
Back to top
YIM  
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: ArrowAnchoring (again)
Reply #3 - Sep 11th, 2008 at 12:51pm
Print Post  
I meant when you want the 'no' arc from the point at 3 o'clock, you'd likely also want the layout function to place the destination node of the 'no' link on the right of the origin node?
  
Back to top
 
IP Logged
 
Stuart
Junior Member
**
Offline


Short, fat and bald, that's
me.

Posts: 64
Location: Lincs, UK
Joined: Sep 5th, 2008
Re: ArrowAnchoring (again)
Reply #4 - Sep 11th, 2008 at 2:49pm
Print Post  
Yes, indeed.

Playing around with the layout properties and by automagically calling RouteAllArrows immediately after calling ArrangeDiagram has given me a much better result to be starting from...

  

-- &&Stuart
Back to top
YIM  
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint