Page Index Toggle Pages: 1 Send TopicPrint
Normal Topic Layer Layout & RouteAllArrows very slow (Read 1725 times)
baron
YaBB Newbies
*
Offline


1001001001

Posts: 42
Joined: Dec 2nd, 2007
Layer Layout & RouteAllArrows very slow
Dec 2nd, 2007 at 1:05pm
Print Post  
First I don't understand the TimeLimit property in the Layer layout. It doesn't seem to affect the time it takes to layout at all.

Secondly, both the RouteAllArrows method and the Layer Layout (with SplitLayers=true) have serious speed issues:

-It's a relatively simple chart structure: One root node with 200 direct subnodes - i.e. only one level deep.
- I set the Root property of the layouts to the single root node
-My computer is fast (Core 2 Duo 2.1).

Results:
Layer layout (with SplitLayers=true) takes about 4 minutes!
RouteAllArrows (with previously set TreeLayout) takes about 4 minutes as well

Any suggestions? I'm not sure if I should put this in the Bug Reports section....
  
Back to top
 
IP Logged
 
Stoyo
God Member
*****
Offline


MindFusion support

Posts: 13230
Joined: Jul 20th, 2005
Re: Layer Layout & RouteAllArrows very slow
Reply #1 - Dec 3rd, 2007 at 8:15am
Print Post  
LayereLayout looks for the longest path in the graph, and assigns the graph layers relatively to that path. TimeLimit limits only the time the path-finding function is allowed to run. In your case the longest path is of length 1 and is found immediately, so TimeLimit doesn’t have any effect.

This version of the flowchart.dll adds a SwapPairsIterations property to LayeredLayout:
https://mindfusion.org/_temp/FlowChartPro.zip

Setting SwapPairsIterations to 0 should make LayeredLayout finish in less than 20 seconds, but without trying to untangle crossing links. You can assign to the new property values from 0 to 5, which let you control how much time is spent for decreasing link crossings.

RouteAllArrows will work faster if you set a larger RoutingOptions.GridSize. You can gain better performance if you re-route only the arrows that are not processed by TreeLayout, e.g. ones that go up in the tree or ones that merge tree branches at some node.

I hope that helps,
Stoyan
  
Back to top
 
IP Logged
 
Page Index Toggle Pages: 1
Send TopicPrint