<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">java.lang.Object</A>
<IMGSRC="../../../resources/inherit.gif"ALT="extended by "><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">com.mxgraph.layout.mxGraphLayout</A>
<IMGSRC="../../../resources/inherit.gif"ALT="extended by "><B>com.mxgraph.layout.mxFastOrganicLayout</B>
</PRE>
<DL>
<DT><B>All Implemented Interfaces:</B><DD><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html"title="interface in com.mxgraph.layout">mxIGraphLayout</A></DD>
</DL>
<HR>
<DL>
<DT><PRE>public class <B>mxFastOrganicLayout</B><DT>extends <AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></DL>
<CODE>protected <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Hashtable.html?is-external=true"title="class or interface in java.util">Hashtable</A><<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A>,<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Integer.html?is-external=true"title="class or interface in java.lang">Integer</A>></CODE></FONT></TD>
<CODE>protected <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A>[]</CODE></FONT></TD>
<THALIGN="left"><B>Fields inherited from class com.mxgraph.layout.<AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></B></TH>
<TD><CODE><B><AHREF="../../../com/mxgraph/layout/mxFastOrganicLayout.html#mxFastOrganicLayout(com.mxgraph.view.mxGraph)">mxFastOrganicLayout</A></B>(<AHREF="../../../com/mxgraph/view/mxGraph.html"title="class in com.mxgraph.view">mxGraph</A> graph)</CODE>
<BR>
Constructs a new fast organic layout for the specified graph.</TD>
<TD><CODE><B><AHREF="../../../com/mxgraph/layout/mxFastOrganicLayout.html#execute(java.lang.Object)">execute</A></B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> parent)</CODE>
<BR>
Executes the layout for the children of the specified parent.</TD>
<TD><CODE><B><AHREF="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isVertexIgnored(java.lang.Object)">isVertexIgnored</A></B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> vertex)</CODE>
<BR>
Returns a boolean indicating if the given <mxCell> should be ignored as a
<TD><CODE><B><AHREF="../../../com/mxgraph/layout/mxFastOrganicLayout.html#moveCell(java.lang.Object, double, double)">moveCell</A></B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> cell,
double x,
double y)</CODE>
<BR>
Notified when a cell is being moved in a parent that has automatic
<THALIGN="left"><B>Methods inherited from class com.mxgraph.layout.<AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></B></TH>
<THALIGN="left"><B>Methods inherited from class java.lang.<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A></B></TH>
</TR>
<TRBGCOLOR="white"CLASS="TableRowColor">
<TD><CODE><AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#clone()"title="class or interface in java.lang">clone</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#equals(java.lang.Object)"title="class or interface in java.lang">equals</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#finalize()"title="class or interface in java.lang">finalize</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#getClass()"title="class or interface in java.lang">getClass</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#hashCode()"title="class or interface in java.lang">hashCode</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notify()"title="class or interface in java.lang">notify</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#notifyAll()"title="class or interface in java.lang">notifyAll</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#toString()"title="class or interface in java.lang">toString</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait()"title="class or interface in java.lang">wait</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long)"title="class or interface in java.lang">wait</A>, <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true#wait(long, int)"title="class or interface in java.lang">wait</A></CODE></TD>
<DD>The maximum distance between vertices, beyond which their
repulsion no longer has an effect
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="initialTemp"><!----></A><H3>
initialTemp</H3>
<PRE>
protected double <B>initialTemp</B></PRE>
<DL>
<DD>Start value of temperature. Default is 200.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="temperature"><!----></A><H3>
temperature</H3>
<PRE>
protected double <B>temperature</B></PRE>
<DL>
<DD>Temperature to limit displacement at later stages of layout.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="maxIterations"><!----></A><H3>
maxIterations</H3>
<PRE>
protected int <B>maxIterations</B></PRE>
<DL>
<DD>Total number of iterations to run the layout though.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="iteration"><!----></A><H3>
iteration</H3>
<PRE>
protected int <B>iteration</B></PRE>
<DL>
<DD>Current iteration count.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="vertexArray"><!----></A><H3>
vertexArray</H3>
<PRE>
protected <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A>[] <B>vertexArray</B></PRE>
<DL>
<DD>An array of all vertices to be laid out.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="dispX"><!----></A><H3>
dispX</H3>
<PRE>
protected double[] <B>dispX</B></PRE>
<DL>
<DD>An array of locally stored X co-ordinate displacements for the vertices.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="dispY"><!----></A><H3>
dispY</H3>
<PRE>
protected double[] <B>dispY</B></PRE>
<DL>
<DD>An array of locally stored Y co-ordinate displacements for the vertices.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="cellLocation"><!----></A><H3>
cellLocation</H3>
<PRE>
protected double[][] <B>cellLocation</B></PRE>
<DL>
<DD>An array of locally stored co-ordinate positions for the vertices.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="radius"><!----></A><H3>
radius</H3>
<PRE>
protected double[] <B>radius</B></PRE>
<DL>
<DD>The approximate radius of each cell, nodes only.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="radiusSquared"><!----></A><H3>
radiusSquared</H3>
<PRE>
protected double[] <B>radiusSquared</B></PRE>
<DL>
<DD>The approximate radius squared of each cell, nodes only.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="isMoveable"><!----></A><H3>
isMoveable</H3>
<PRE>
protected boolean[] <B>isMoveable</B></PRE>
<DL>
<DD>Array of booleans representing the movable states of the vertices.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="neighbours"><!----></A><H3>
neighbours</H3>
<PRE>
protected int[][] <B>neighbours</B></PRE>
<DL>
<DD>Local copy of cell neighbours.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="allowedToRun"><!----></A><H3>
allowedToRun</H3>
<PRE>
protected boolean <B>allowedToRun</B></PRE>
<DL>
<DD>Boolean flag that specifies if the layout is allowed to run. If this is
set to false, then the layout exits in the following iteration.
<P>
<DL>
</DL>
</DL>
<HR>
<ANAME="indices"><!----></A><H3>
indices</H3>
<PRE>
protected <AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/util/Hashtable.html?is-external=true"title="class or interface in java.util">Hashtable</A><<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A>,<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Integer.html?is-external=true"title="class or interface in java.lang">Integer</A>><B>indices</B></PRE>
public boolean <B>isVertexIgnored</B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> vertex)</PRE>
<DL>
<DD>Returns a boolean indicating if the given <mxCell> should be ignored as a
vertex. This returns true if the cell has no connections.
<P>
<DD><DL>
<DT><B>Overrides:</B><DD><CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html#isVertexIgnored(java.lang.Object)">isVertexIgnored</A></CODE> in class <CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>vertex</CODE> - Object that represents the vertex to be tested.
<DT><B>Returns:</B><DD>Returns true if the vertex should be ignored.</DL>
public void <B>moveCell</B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> cell,
double x,
double y)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html#moveCell(java.lang.Object, double, double)">mxIGraphLayout</A></CODE></B></DD>
<DD>Notified when a cell is being moved in a parent that has automatic
layout to update the cell state (eg. index) so that the outcome of the
layout will position the vertex as close to the point (x, y) as
possible.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html#moveCell(java.lang.Object, double, double)">moveCell</A></CODE> in interface <CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html"title="interface in com.mxgraph.layout">mxIGraphLayout</A></CODE><DT><B>Overrides:</B><DD><CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html#moveCell(java.lang.Object, double, double)">moveCell</A></CODE> in class <CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>cell</CODE> - Cell which is being moved.<DD><CODE>x</CODE> - X-coordinate of the new cell location.<DD><CODE>y</CODE> - Y-coordinate of the new cell location.</DL>
public void <B>execute</B>(<AHREF="http://download.oracle.com/javase/1.5.0/docs/api/java/lang/Object.html?is-external=true"title="class or interface in java.lang">Object</A> parent)</PRE>
<DL>
<DD><B>Description copied from interface: <CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html#execute(java.lang.Object)">mxIGraphLayout</A></CODE></B></DD>
<DD>Executes the layout for the children of the specified parent.
<P>
<DD><DL>
<DT><B>Specified by:</B><DD><CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html#execute(java.lang.Object)">execute</A></CODE> in interface <CODE><AHREF="../../../com/mxgraph/layout/mxIGraphLayout.html"title="interface in com.mxgraph.layout">mxIGraphLayout</A></CODE><DT><B>Overrides:</B><DD><CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html#execute(java.lang.Object)">execute</A></CODE> in class <CODE><AHREF="../../../com/mxgraph/layout/mxGraphLayout.html"title="class in com.mxgraph.layout">mxGraphLayout</A></CODE></DL>
</DD>
<DD><DL>
<DT><B>Parameters:</B><DD><CODE>parent</CODE> - Parent cell that contains the children to be layed out.</DL>
</DD>
</DL>
<HR>
<ANAME="calcPositions()"><!----></A><H3>
calcPositions</H3>
<PRE>
protected void <B>calcPositions</B>()</PRE>
<DL>
<DD>Takes the displacements calculated for each cell and applies them to the
local cache of cell positions. Limits the displacement to the current
temperature.
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<ANAME="calcAttraction()"><!----></A><H3>
calcAttraction</H3>
<PRE>
protected void <B>calcAttraction</B>()</PRE>
<DL>
<DD>Calculates the attractive forces between all laid out nodes linked by
edges
<P>
<DD><DL>
</DL>
</DD>
</DL>
<HR>
<ANAME="calcRepulsion()"><!----></A><H3>
calcRepulsion</H3>
<PRE>
protected void <B>calcRepulsion</B>()</PRE>
<DL>
<DD>Calculates the repulsive forces between all laid out nodes