Thanks for that suggestion. I gave it a try, but didn’t quite get the results I was hoping for.
I have to wait until after the GoTreeLayout PerformLayout() has completed to set the bounds of the GoTreeLayoutNodes because the arrangement of the GoLinks and the EndSegmentLengths is dependant on how the nodes are positioned relative to one another.
But if I set the bounds after PerformLayout(), I have to call PerformLayout() again for the new bounds to take affect. Is there are better way than this? Should I be sub-classing the GoTreeLayout class and overriding some specific methods.
One of the problems I was hoping this would solve is where a GoLink goes around a node, but turns back toward the node too closely after the node. I was hoping making the GoTreeLayoutNode's bounds wider would prevent this, but it doesn't seem to do so. Any suggestions for that?