maxGraph/java/docs/com/mxgraph/layout/mxFastOrganicLayout.html

1027 lines
40 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (version 1.7.0_51) on Mon Nov 10 03:59:58 EST 2014 -->
<title>mxFastOrganicLayout (mxGraph 3.1.1.1 API Specification)</title>
<meta name="date" content="2014-11-10">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
</head>
<body>
<script type="text/javascript"><!--
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="mxFastOrganicLayout (mxGraph 3.1.1.1 API Specification)";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar_top">
<!-- -->
</a><a href="#skip-navbar_top" title="Skip navigation links"></a><a name="navbar_top_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/mxFastOrganicLayout.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><p><b>mxGraph 3.1.1.1</b></p></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/mxgraph/layout/mxEdgeLabelLayout.html" title="class in com.mxgraph.layout"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/mxgraph/layout/mxFastOrganicLayout.html" target="_top">Frames</a></li>
<li><a href="mxFastOrganicLayout.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">com.mxgraph.layout</div>
<h2 title="Class mxFastOrganicLayout" class="title">Class mxFastOrganicLayout</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">com.mxgraph.layout.mxGraphLayout</a></li>
<li>
<ul class="inheritance">
<li>com.mxgraph.layout.mxFastOrganicLayout</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../../com/mxgraph/layout/mxIGraphLayout.html" title="interface in com.mxgraph.layout">mxIGraphLayout</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="strong">mxFastOrganicLayout</span>
extends <a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></pre>
<div class="block">Fast organic layout algorithm.</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#allowedToRun">allowedToRun</a></strong></code>
<div class="block">Boolean flag that specifies if the layout is allowed to run.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double[][]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#cellLocation">cellLocation</a></strong></code>
<div class="block">An array of locally stored co-ordinate positions for the vertices.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#disableEdgeStyle">disableEdgeStyle</a></strong></code>
<div class="block">Specifies if the STYLE_NOEDGESTYLE flag should be set on edges that are
modified by the result.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#dispX">dispX</a></strong></code>
<div class="block">An array of locally stored X co-ordinate displacements for the vertices.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#dispY">dispY</a></strong></code>
<div class="block">An array of locally stored Y co-ordinate displacements for the vertices.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#forceConstant">forceConstant</a></strong></code>
<div class="block">The force constant by which the attractive forces are divided and the
replusive forces are multiple by the square of.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#forceConstantSquared">forceConstantSquared</a></strong></code>
<div class="block">Cache of <forceConstant>^2 for performance.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.Hashtable&lt;java.lang.Object,java.lang.Integer&gt;</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#indices">indices</a></strong></code>
<div class="block">Maps from vertices to indices.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#initialTemp">initialTemp</a></strong></code>
<div class="block">Start value of temperature.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isMoveable">isMoveable</a></strong></code>
<div class="block">Array of booleans representing the movable states of the vertices.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#iteration">iteration</a></strong></code>
<div class="block">Current iteration count.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#maxDistanceLimit">maxDistanceLimit</a></strong></code>
<div class="block">The maximum distance between vertices, beyond which their
repulsion no longer has an effect</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#maxIterations">maxIterations</a></strong></code>
<div class="block">Total number of iterations to run the layout though.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#minDistanceLimit">minDistanceLimit</a></strong></code>
<div class="block">Minimal distance limit.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#minDistanceLimitSquared">minDistanceLimitSquared</a></strong></code>
<div class="block">Cached version of <minDistanceLimit> squared.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int[][]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#neighbours">neighbours</a></strong></code>
<div class="block">Local copy of cell neighbours.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected double[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#radius">radius</a></strong></code>
<div class="block">The approximate radius of each cell, nodes only.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#radiusSquared">radiusSquared</a></strong></code>
<div class="block">The approximate radius squared of each cell, nodes only.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#resetEdges">resetEdges</a></strong></code>
<div class="block">Specifies if all edge points of traversed edges should be removed.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#temperature">temperature</a></strong></code>
<div class="block">Temperature to limit displacement at later stages of layout.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#useInputOrigin">useInputOrigin</a></strong></code>
<div class="block">Specifies if the top left corner of the input cells should be the origin
of the layout result.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.lang.Object[]</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#vertexArray">vertexArray</a></strong></code>
<div class="block">An array of all vertices to be laid out.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="fields_inherited_from_class_com.mxgraph.layout.mxGraphLayout">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;com.mxgraph.layout.<a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></h3>
<code><a href="../../../com/mxgraph/layout/mxGraphLayout.html#graph">graph</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#parent">parent</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#useBoundingBox">useBoundingBox</a></code></li>
</ul>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#mxFastOrganicLayout(com.mxgraph.view.mxGraph)">mxFastOrganicLayout</a></strong>(<a href="../../../com/mxgraph/view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph)</code>
<div class="block">Constructs a new fast organic layout for the specified graph.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method_summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="overviewSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span>Methods</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#calcAttraction()">calcAttraction</a></strong>()</code>
<div class="block">Calculates the attractive forces between all laid out nodes linked by
edges</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#calcPositions()">calcPositions</a></strong>()</code>
<div class="block">Takes the displacements calculated for each cell and applies them to the
local cache of cell positions.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#calcRepulsion()">calcRepulsion</a></strong>()</code>
<div class="block">Calculates the repulsive forces between all laid out nodes</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#execute(java.lang.Object)">execute</a></strong>(java.lang.Object&nbsp;parent)</code>
<div class="block">Executes the layout for the children of the specified parent.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#getForceConstant()">getForceConstant</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#getInitialTemp()">getInitialTemp</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#getMaxDistanceLimit()">getMaxDistanceLimit</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#getMaxIterations()">getMaxIterations</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>double</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#getMinDistanceLimit()">getMinDistanceLimit</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isDisableEdgeStyle()">isDisableEdgeStyle</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isResetEdges()">isResetEdges</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isUseInputOrigin()">isUseInputOrigin</a></strong>()</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#isVertexIgnored(java.lang.Object)">isVertexIgnored</a></strong>(java.lang.Object&nbsp;vertex)</code>
<div class="block">Returns a boolean indicating if the given <mxCell> should be ignored as a
vertex.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#moveCell(java.lang.Object, double, double)">moveCell</a></strong>(java.lang.Object&nbsp;cell,
double&nbsp;x,
double&nbsp;y)</code>
<div class="block">Notified when a cell is being moved in a parent that has automatic
layout to update the cell state (eg.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#reduceTemperature()">reduceTemperature</a></strong>()</code>
<div class="block">Reduces the temperature of the layout from an initial setting in a linear
fashion to zero.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setDisableEdgeStyle(boolean)">setDisableEdgeStyle</a></strong>(boolean&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setForceConstant(double)">setForceConstant</a></strong>(double&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setInitialTemp(double)">setInitialTemp</a></strong>(double&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setMaxDistanceLimit(double)">setMaxDistanceLimit</a></strong>(double&nbsp;maxDistanceLimit)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setMaxIterations(double)">setMaxIterations</a></strong>(double&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setMinDistanceLimit(double)">setMinDistanceLimit</a></strong>(double&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setResetEdges(boolean)">setResetEdges</a></strong>(boolean&nbsp;value)</code>&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><strong><a href="../../../com/mxgraph/layout/mxFastOrganicLayout.html#setUseInputOrigin(boolean)">setUseInputOrigin</a></strong>(boolean&nbsp;value)</code>&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_com.mxgraph.layout.mxGraphLayout">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;com.mxgraph.layout.<a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></h3>
<code><a href="../../../com/mxgraph/layout/mxGraphLayout.html#arrangeGroups(java.lang.Object[], int)">arrangeGroups</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#getConstraint(java.lang.Object, java.lang.Object)">getConstraint</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#getConstraint(java.lang.Object, java.lang.Object, java.lang.Object, boolean)">getConstraint</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#getGraph()">getGraph</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#getParentOffset(java.lang.Object)">getParentOffset</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#getVertexBounds(java.lang.Object)">getVertexBounds</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#isEdgeIgnored(java.lang.Object)">isEdgeIgnored</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#isUseBoundingBox()">isUseBoundingBox</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#isVertexMovable(java.lang.Object)">isVertexMovable</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#setEdgePoints(java.lang.Object, java.util.List)">setEdgePoints</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#setEdgeStyleEnabled(java.lang.Object, boolean)">setEdgeStyleEnabled</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#setOrthogonalEdge(java.lang.Object, boolean)">setOrthogonalEdge</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#setUseBoundingBox(boolean)">setUseBoundingBox</a>, <a href="../../../com/mxgraph/layout/mxGraphLayout.html#setVertexLocation(java.lang.Object, double, double)">setVertexLocation</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a name="methods_inherited_from_class_java.lang.Object">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.Object</h3>
<code>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field_detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a name="useInputOrigin">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>useInputOrigin</h4>
<pre>protected&nbsp;boolean useInputOrigin</pre>
<div class="block">Specifies if the top left corner of the input cells should be the origin
of the layout result. Default is true.</div>
</li>
</ul>
<a name="resetEdges">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resetEdges</h4>
<pre>protected&nbsp;boolean resetEdges</pre>
<div class="block">Specifies if all edge points of traversed edges should be removed.
Default is true.</div>
</li>
</ul>
<a name="disableEdgeStyle">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>disableEdgeStyle</h4>
<pre>protected&nbsp;boolean disableEdgeStyle</pre>
<div class="block">Specifies if the STYLE_NOEDGESTYLE flag should be set on edges that are
modified by the result. Default is true.</div>
</li>
</ul>
<a name="forceConstant">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forceConstant</h4>
<pre>protected&nbsp;double forceConstant</pre>
<div class="block">The force constant by which the attractive forces are divided and the
replusive forces are multiple by the square of. The value equates to the
average radius there is of free space around each node. Default is 50.</div>
</li>
</ul>
<a name="forceConstantSquared">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>forceConstantSquared</h4>
<pre>protected&nbsp;double forceConstantSquared</pre>
<div class="block">Cache of <forceConstant>^2 for performance.</div>
</li>
</ul>
<a name="minDistanceLimit">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minDistanceLimit</h4>
<pre>protected&nbsp;double minDistanceLimit</pre>
<div class="block">Minimal distance limit. Default is 2. Prevents of
dividing by zero.</div>
</li>
</ul>
<a name="minDistanceLimitSquared">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minDistanceLimitSquared</h4>
<pre>protected&nbsp;double minDistanceLimitSquared</pre>
<div class="block">Cached version of <minDistanceLimit> squared.</div>
</li>
</ul>
<a name="maxDistanceLimit">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxDistanceLimit</h4>
<pre>protected&nbsp;double maxDistanceLimit</pre>
<div class="block">The maximum distance between vertices, beyond which their
repulsion no longer has an effect</div>
</li>
</ul>
<a name="initialTemp">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>initialTemp</h4>
<pre>protected&nbsp;double initialTemp</pre>
<div class="block">Start value of temperature. Default is 200.</div>
</li>
</ul>
<a name="temperature">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>temperature</h4>
<pre>protected&nbsp;double temperature</pre>
<div class="block">Temperature to limit displacement at later stages of layout.</div>
</li>
</ul>
<a name="maxIterations">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>maxIterations</h4>
<pre>protected&nbsp;double maxIterations</pre>
<div class="block">Total number of iterations to run the layout though.</div>
</li>
</ul>
<a name="iteration">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>iteration</h4>
<pre>protected&nbsp;double iteration</pre>
<div class="block">Current iteration count.</div>
</li>
</ul>
<a name="vertexArray">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>vertexArray</h4>
<pre>protected&nbsp;java.lang.Object[] vertexArray</pre>
<div class="block">An array of all vertices to be laid out.</div>
</li>
</ul>
<a name="dispX">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispX</h4>
<pre>protected&nbsp;double[] dispX</pre>
<div class="block">An array of locally stored X co-ordinate displacements for the vertices.</div>
</li>
</ul>
<a name="dispY">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dispY</h4>
<pre>protected&nbsp;double[] dispY</pre>
<div class="block">An array of locally stored Y co-ordinate displacements for the vertices.</div>
</li>
</ul>
<a name="cellLocation">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>cellLocation</h4>
<pre>protected&nbsp;double[][] cellLocation</pre>
<div class="block">An array of locally stored co-ordinate positions for the vertices.</div>
</li>
</ul>
<a name="radius">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>radius</h4>
<pre>protected&nbsp;double[] radius</pre>
<div class="block">The approximate radius of each cell, nodes only.</div>
</li>
</ul>
<a name="radiusSquared">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>radiusSquared</h4>
<pre>protected&nbsp;double[] radiusSquared</pre>
<div class="block">The approximate radius squared of each cell, nodes only.</div>
</li>
</ul>
<a name="isMoveable">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isMoveable</h4>
<pre>protected&nbsp;boolean[] isMoveable</pre>
<div class="block">Array of booleans representing the movable states of the vertices.</div>
</li>
</ul>
<a name="neighbours">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>neighbours</h4>
<pre>protected&nbsp;int[][] neighbours</pre>
<div class="block">Local copy of cell neighbours.</div>
</li>
</ul>
<a name="allowedToRun">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>allowedToRun</h4>
<pre>protected&nbsp;boolean allowedToRun</pre>
<div class="block">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.</div>
</li>
</ul>
<a name="indices">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>indices</h4>
<pre>protected&nbsp;java.util.Hashtable&lt;java.lang.Object,java.lang.Integer&gt; indices</pre>
<div class="block">Maps from vertices to indices.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor_detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a name="mxFastOrganicLayout(com.mxgraph.view.mxGraph)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>mxFastOrganicLayout</h4>
<pre>public&nbsp;mxFastOrganicLayout(<a href="../../../com/mxgraph/view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph)</pre>
<div class="block">Constructs a new fast organic layout for the specified graph.</div>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method_detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a name="isVertexIgnored(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isVertexIgnored</h4>
<pre>public&nbsp;boolean&nbsp;isVertexIgnored(java.lang.Object&nbsp;vertex)</pre>
<div class="block">Returns a boolean indicating if the given <mxCell> should be ignored as a
vertex. This returns true if the cell has no connections.</div>
<dl>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../com/mxgraph/layout/mxGraphLayout.html#isVertexIgnored(java.lang.Object)">isVertexIgnored</a></code>&nbsp;in class&nbsp;<code><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>vertex</code> - Object that represents the vertex to be tested.</dd>
<dt><span class="strong">Returns:</span></dt><dd>Returns true if the vertex should be ignored.</dd></dl>
</li>
</ul>
<a name="isUseInputOrigin()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isUseInputOrigin</h4>
<pre>public&nbsp;boolean&nbsp;isUseInputOrigin()</pre>
</li>
</ul>
<a name="setUseInputOrigin(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setUseInputOrigin</h4>
<pre>public&nbsp;void&nbsp;setUseInputOrigin(boolean&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="isResetEdges()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isResetEdges</h4>
<pre>public&nbsp;boolean&nbsp;isResetEdges()</pre>
</li>
</ul>
<a name="setResetEdges(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResetEdges</h4>
<pre>public&nbsp;void&nbsp;setResetEdges(boolean&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="isDisableEdgeStyle()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isDisableEdgeStyle</h4>
<pre>public&nbsp;boolean&nbsp;isDisableEdgeStyle()</pre>
</li>
</ul>
<a name="setDisableEdgeStyle(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setDisableEdgeStyle</h4>
<pre>public&nbsp;void&nbsp;setDisableEdgeStyle(boolean&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="getMaxIterations()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxIterations</h4>
<pre>public&nbsp;double&nbsp;getMaxIterations()</pre>
</li>
</ul>
<a name="setMaxIterations(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxIterations</h4>
<pre>public&nbsp;void&nbsp;setMaxIterations(double&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="getForceConstant()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getForceConstant</h4>
<pre>public&nbsp;double&nbsp;getForceConstant()</pre>
</li>
</ul>
<a name="setForceConstant(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setForceConstant</h4>
<pre>public&nbsp;void&nbsp;setForceConstant(double&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="getMinDistanceLimit()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMinDistanceLimit</h4>
<pre>public&nbsp;double&nbsp;getMinDistanceLimit()</pre>
</li>
</ul>
<a name="setMinDistanceLimit(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMinDistanceLimit</h4>
<pre>public&nbsp;void&nbsp;setMinDistanceLimit(double&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="getMaxDistanceLimit()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getMaxDistanceLimit</h4>
<pre>public&nbsp;double&nbsp;getMaxDistanceLimit()</pre>
<dl><dt><span class="strong">Returns:</span></dt><dd>the maxDistanceLimit</dd></dl>
</li>
</ul>
<a name="setMaxDistanceLimit(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMaxDistanceLimit</h4>
<pre>public&nbsp;void&nbsp;setMaxDistanceLimit(double&nbsp;maxDistanceLimit)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>maxDistanceLimit</code> - the maxDistanceLimit to set</dd></dl>
</li>
</ul>
<a name="getInitialTemp()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getInitialTemp</h4>
<pre>public&nbsp;double&nbsp;getInitialTemp()</pre>
</li>
</ul>
<a name="setInitialTemp(double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInitialTemp</h4>
<pre>public&nbsp;void&nbsp;setInitialTemp(double&nbsp;value)</pre>
<dl><dt><span class="strong">Parameters:</span></dt><dd><code>value</code> - </dd></dl>
</li>
</ul>
<a name="reduceTemperature()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>reduceTemperature</h4>
<pre>protected&nbsp;void&nbsp;reduceTemperature()</pre>
<div class="block">Reduces the temperature of the layout from an initial setting in a linear
fashion to zero.</div>
</li>
</ul>
<a name="moveCell(java.lang.Object, double, double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveCell</h4>
<pre>public&nbsp;void&nbsp;moveCell(java.lang.Object&nbsp;cell,
double&nbsp;x,
double&nbsp;y)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html#moveCell(java.lang.Object, double, double)">mxIGraphLayout</a></code></strong></div>
<div class="block">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.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html#moveCell(java.lang.Object, double, double)">moveCell</a></code>&nbsp;in interface&nbsp;<code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html" title="interface in com.mxgraph.layout">mxIGraphLayout</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../com/mxgraph/layout/mxGraphLayout.html#moveCell(java.lang.Object, double, double)">moveCell</a></code>&nbsp;in class&nbsp;<code><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>cell</code> - Cell which is being moved.</dd><dd><code>x</code> - X-coordinate of the new cell location.</dd><dd><code>y</code> - Y-coordinate of the new cell location.</dd></dl>
</li>
</ul>
<a name="execute(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre>public&nbsp;void&nbsp;execute(java.lang.Object&nbsp;parent)</pre>
<div class="block"><strong>Description copied from interface:&nbsp;<code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html#execute(java.lang.Object)">mxIGraphLayout</a></code></strong></div>
<div class="block">Executes the layout for the children of the specified parent.</div>
<dl>
<dt><strong>Specified by:</strong></dt>
<dd><code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html#execute(java.lang.Object)">execute</a></code>&nbsp;in interface&nbsp;<code><a href="../../../com/mxgraph/layout/mxIGraphLayout.html" title="interface in com.mxgraph.layout">mxIGraphLayout</a></code></dd>
<dt><strong>Overrides:</strong></dt>
<dd><code><a href="../../../com/mxgraph/layout/mxGraphLayout.html#execute(java.lang.Object)">execute</a></code>&nbsp;in class&nbsp;<code><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></code></dd>
<dt><span class="strong">Parameters:</span></dt><dd><code>parent</code> - Parent cell that contains the children to be layed out.</dd></dl>
</li>
</ul>
<a name="calcPositions()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>calcPositions</h4>
<pre>protected&nbsp;void&nbsp;calcPositions()</pre>
<div class="block">Takes the displacements calculated for each cell and applies them to the
local cache of cell positions. Limits the displacement to the current
temperature.</div>
</li>
</ul>
<a name="calcAttraction()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>calcAttraction</h4>
<pre>protected&nbsp;void&nbsp;calcAttraction()</pre>
<div class="block">Calculates the attractive forces between all laid out nodes linked by
edges</div>
</li>
</ul>
<a name="calcRepulsion()">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>calcRepulsion</h4>
<pre>protected&nbsp;void&nbsp;calcRepulsion()</pre>
<div class="block">Calculates the repulsive forces between all laid out nodes</div>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar_bottom">
<!-- -->
</a><a href="#skip-navbar_bottom" title="Skip navigation links"></a><a name="navbar_bottom_firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/mxFastOrganicLayout.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../index-all.html">Index</a></li>
<li><a href="../../../help-doc.html">Help</a></li>
</ul>
<div class="aboutLanguage"><em><p><b>mxGraph 3.1.1.1</b></p></em></div>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../../com/mxgraph/layout/mxEdgeLabelLayout.html" title="class in com.mxgraph.layout"><span class="strong">Prev Class</span></a></li>
<li><a href="../../../com/mxgraph/layout/mxGraphLayout.html" title="class in com.mxgraph.layout"><span class="strong">Next Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../../index.html?com/mxgraph/layout/mxFastOrganicLayout.html" target="_top">Frames</a></li>
<li><a href="mxFastOrganicLayout.html" target="_top">No Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses-noframe.html">All Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field_summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field_detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor_detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method_detail">Method</a></li>
</ul>
</div>
<a name="skip-navbar_bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
<p class="legalCopy"><small><font size=1>Copyright (c) 2010 <a href="http://www.mxgraph.com/"
target="_blank">Gaudenz Alder, David Benson</a>. All rights reserved.</font></small></p>
</body>
</html>