]> granicus.if.org Git - graphviz/commitdiff
Enable beautify feature in sfdp. This tries to draw leaf nodes uniformly on a circle
authorEmden Gansner <erg@research.att.com>
Fri, 7 Oct 2011 14:54:34 +0000 (10:54 -0400)
committerEmden Gansner <erg@research.att.com>
Fri, 7 Oct 2011 14:54:34 +0000 (10:54 -0400)
around root node.

lib/sfdpgen/sfdpinit.c
lib/sfdpgen/spring_electrical.c

index d036d3d0368ce93076dd3ea71d4b177e0f0b6556..669c6e2ada6bbc09655aa8f41f47df85a10beae5 100644 (file)
@@ -306,6 +306,7 @@ tuneControl (graph_t* g, spring_electrical_control ctrl)
     ctrl->tscheme = late_quadtree_scheme(g, agfindgraphattr(g, "quadtree"), QUAD_TREE_NORMAL);
     /* ctrl->method = late_mode(g, agfindgraphattr(g, "mode"), METHOD_SPRING_ELECTRICAL); */
     ctrl->method = METHOD_SPRING_ELECTRICAL;
+    ctrl->beautify_leaves = mapBool (agget(g, "beautify"), FALSE);
     ctrl->rotation = late_double(g, agfindgraphattr(g, "rotation"), 0.0, -MAXDOUBLE);
     ctrl->edge_labeling_scheme = late_int(g, agfindgraphattr(g, "label_scheme"), 0, 0);
     if (ctrl->edge_labeling_scheme > 4) {
index 28d70a3cdad921310d7760b5266aca5d6771fd1e..e85a05358cb9fcd1186c6d78aebab7a276e98fb3 100644 (file)
@@ -413,6 +413,7 @@ static void beautify_leaves(int dim, SparseMatrix A, real *x){
       pad = MAX(maxang - PI*0.166667*(nleaves-1), 0)*0.5;
       ang1 += pad*0.95;
       ang2 -= pad*0.95;
+ang1 = 0; ang2 = 2*PI; maxang = 2*PI;
       assert(ang2 >= ang1);
       step = 0.;
       if (nleaves > 1) step = (ang2 - ang1)/(nleaves - 1);