<TR><TD><A NAME=a:minlen HREF=#d:minlen>minlen</A>
</TD><TD>E</TD><TD>int</TD><TD ALIGN="CENTER">1</TD><TD>0</TD><TD>dot only</TD> </TR>
<TR><TD><A NAME=a:mode HREF=#d:mode>mode</A>
-</TD><TD>G</TD><TD>string</TD><TD ALIGN="CENTER">major<BR>spring</TD><TD></TD><TD>sfdp, neato only</TD> </TR>
+</TD><TD>G</TD><TD>string</TD><TD ALIGN="CENTER">major</TD><TD></TD><TD>neato only</TD> </TR>
<TR><TD><A NAME=a:model HREF=#d:model>model</A>
</TD><TD>G</TD><TD>string</TD><TD ALIGN="CENTER">shortpath</TD><TD></TD><TD>neato only</TD> </TR>
<TR><TD><A NAME=a:mosek HREF=#d:mosek>mosek</A>
directionality similar to the layout used in dot, and "ipsep", which
allows the graph to specify minimum vertical and horizontal distances
between nodes. (See the <A HREF=#d:sep>sep</A> attribute.)
- <P>
- For sfdp, the default <B>mode</B> is <TT>"spring"</TT>, which corresponds to using
- a spring-electrical model. Setting <B>mode</B> to <TT>"maxent"</TT> causes a similar
- model to be run but one that also takes into account edge lengths specified by a the
<TT>"len"</TT> attribute.
<DT><A NAME=d:model HREF=#a:model><STRONG>model</STRONG></A>
points, of the lower-left corner (llx,lly) and the upper-right corner
(urx,ury).
-<DT><A NAME=kshape><STRONG>shape</STRONG></A>
-<DD>A string specifying the <A HREF=/content/node-shapes>shape</A> of a node.
+<DT><A NAME=k:shape><STRONG>shape</STRONG></A>
+<DD>A string specifying the <A HREF=shapes.html>shape</A> of a node.
There are three
main types of shapes :
<A HREF=shapes.html#polygon>polygon-based</A>,
Specifies the minimum separation between all nodes.
:minlen:E:int:1:0; dot
Minimum edge length (rank difference between head and tail).
-:mode:G:string:major/spring; neato,sfdp
+:mode:G:string:major; neato
Technique for optimizing the layout. For neato, if <B>mode</B> is <TT>"major"</TT>,
neato uses stress majorization. If <B>mode</B> is <TT>"KK"</TT>,
neato uses a version of the gradient descent method. The only advantage
directionality similar to the layout used in dot, and "ipsep", which
allows the graph to specify minimum vertical and horizontal distances
between nodes. (See the <A HREF=#d:sep>sep</A> attribute.)
-<P>
-For sfdp, the default <B>mode</B> is <TT>"spring"</TT>, which corresponds to using
-a spring-electrical model. Setting <B>mode</B> to <TT>"maxent"</TT> causes a similar
-model to be run but one that also takes into account edge lengths specified by a the
<TT>"len"</TT> attribute.
:model:G:string:shortpath; neato
This value specifies how the distance matrix is computed for the input
if (edge_label_nodes) FREE(edge_label_nodes);
}
+#if UNUSED
static int
late_mode (graph_t* g, Agsym_t* sym, int dflt)
{
rv = dflt;
return rv;
}
+#endif
static int
late_smooth (graph_t* g, Agsym_t* sym, int dflt)
ctrl->multilevels = late_int(g, agfindgraphattr(g, "levels"), INT_MAX, 0);
ctrl->smoothing = late_smooth(g, agfindgraphattr(g, "smoothing"), SMOOTHING_NONE);
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 = late_mode(g, agfindgraphattr(g, "mode"), METHOD_SPRING_ELECTRICAL); */
+ ctrl->method = METHOD_SPRING_ELECTRICAL;
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) {