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

1424 lines
58 KiB
HTML

<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc (11.0.3) on Mon Jul 15 10:38:04 UTC 2019 -->
<title>mxCompactTreeLayout (mxGraph 4.0.2 API Specification)</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="dc.created" content="2019-07-15">
<link rel="stylesheet" type="text/css" href="../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../jquery/jquery-ui.css" title="Style">
<script type="text/javascript" src="../../../script.js"></script>
<script type="text/javascript" src="../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../jquery/jquery-3.3.1.js"></script>
<script type="text/javascript" src="../../../jquery/jquery-migrate-3.0.1.js"></script>
<script type="text/javascript" src="../../../jquery/jquery-ui.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="mxCompactTreeLayout (mxGraph 4.0.2 API Specification)";
}
}
catch(err) {
}
//-->
var data = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":10,"i15":10,"i16":10,"i17":10,"i18":10,"i19":10,"i20":10,"i21":10,"i22":10,"i23":10,"i24":10,"i25":10,"i26":10,"i27":10,"i28":10,"i29":10,"i30":10,"i31":10,"i32":10,"i33":10,"i34":10,"i35":10,"i36":10,"i37":10,"i38":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
var pathtoroot = "../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/mxCompactTreeLayout.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"><p><b>mxGraph 4.0.2</b></p></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&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 id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<!-- ======== START OF CLASS DATA ======== -->
<main role="main">
<div class="header">
<div class="subTitle"><span class="packageLabelInType">Package</span>&nbsp;<a href="package-summary.html">com.mxgraph.layout</a></div>
<h2 title="Class mxCompactTreeLayout" class="title">Class mxCompactTreeLayout</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li>java.lang.Object</li>
<li>
<ul class="inheritance">
<li><a href="mxGraphLayout.html" title="class in com.mxgraph.layout">com.mxgraph.layout.mxGraphLayout</a></li>
<li>
<ul class="inheritance">
<li>com.mxgraph.layout.mxCompactTreeLayout</li>
</ul>
</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><code><a href="mxIGraphLayout.html" title="interface in com.mxgraph.layout">mxIGraphLayout</a></code></dd>
</dl>
<hr>
<pre>public class <span class="typeNameLabel">mxCompactTreeLayout</span>
extends <a href="mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></pre>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== NESTED CLASS SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="nested.class.summary">
<!-- -->
</a>
<h3>Nested Class Summary</h3>
<table class="memberSummary">
<caption><span>Nested Classes</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="mxCompactTreeLayout.Polygon.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polygon</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected static class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a></span></code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected class&nbsp;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="mxCompactTreeLayout.WeightedCellSorter.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.WeightedCellSorter</a></span></code></th>
<td class="colLast">
<div class="block">A utility class used to track cells whilst sorting occurs on the weighted
sum of their connected edges.</div>
</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- =========== FIELD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.summary">
<!-- -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Field</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#channelBuffer">channelBuffer</a></span></code></th>
<td class="colLast">
<div class="block">The size of the vertical buffer in the center of inter-rank channels
where edge control points should not be placed</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#edgeRouting">edgeRouting</a></span></code></th>
<td class="colLast">
<div class="block">Whether or not to apply the internal tree edge routing</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#groupPadding">groupPadding</a></span></code></th>
<td class="colLast">
<div class="block">Padding added to resized parents</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#horizontal">horizontal</a></span></code></th>
<td class="colLast">
<div class="block">Specifies the orientation of the layout.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#invert">invert</a></span></code></th>
<td class="colLast">
<div class="block">Specifies if edge directions should be inverted.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#levelDistance">levelDistance</a></span></code></th>
<td class="colLast">
<div class="block">Holds the levelDistance.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#minEdgeJetty">minEdgeJetty</a></span></code></th>
<td class="colLast">
<div class="block">The minimum distance for an edge jetty from a vertex</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#moveTree">moveTree</a></span></code></th>
<td class="colLast">
<div class="block">Specifies if the tree should be moved to the top, left corner
if it is inside a top-level layer.</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#nodeDistance">nodeDistance</a></span></code></th>
<td class="colLast">
<div class="block">Holds the nodeDistance.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected java.util.Set&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#parentsChanged">parentsChanged</a></span></code></th>
<td class="colLast">
<div class="block">A set of the parents that need updating based on children
process as part of the layout</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prefHozEdgeSep">prefHozEdgeSep</a></span></code></th>
<td class="colLast">
<div class="block">The preferred horizontal distance between edges exiting a vertex</div>
</td>
</tr>
<tr class="rowColor">
<td class="colFirst"><code>protected int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#prefVertEdgeOff">prefVertEdgeOff</a></span></code></th>
<td class="colLast">
<div class="block">The preferred vertical offset between edges exiting a vertex</div>
</td>
</tr>
<tr class="altColor">
<td class="colFirst"><code>protected boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#resetEdges">resetEdges</a></span></code></th>
<td class="colLast">
<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 boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#resizeParent">resizeParent</a></span></code></th>
<td class="colLast">
<div class="block">If the parents should be resized to match the width/height of the
children.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="fields.inherited.from.class.com.mxgraph.layout.mxGraphLayout">
<!-- -->
</a>
<h3>Fields inherited from class&nbsp;com.mxgraph.layout.<a href="mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></h3>
<code><a href="mxGraphLayout.html#graph">graph</a>, <a href="mxGraphLayout.html#parent">parent</a>, <a href="mxGraphLayout.html#useBoundingBox">useBoundingBox</a></code></li>
</ul>
</li>
</ul>
</section>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.summary">
<!-- -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Constructor</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(com.mxgraph.view.mxGraph)">mxCompactTreeLayout</a></span>&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(com.mxgraph.view.mxGraph,boolean)">mxCompactTreeLayout</a></span>&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph,
boolean&nbsp;horizontal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="altColor">
<th class="colConstructorName" scope="row"><code><span class="memberNameLink"><a href="#%3Cinit%3E(com.mxgraph.view.mxGraph,boolean,boolean)">mxCompactTreeLayout</a></span>&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph,
boolean&nbsp;horizontal,
boolean&nbsp;invert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
</li>
</ul>
</section>
<!-- ========== METHOD SUMMARY =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.summary">
<!-- -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colSecond" scope="col">Method</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#adjustParents()">adjustParents</a></span>()</code></th>
<td class="colLast">
<div class="block">Adjust parent cells whose child geometries have changed.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>protected <a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#apply(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,com.mxgraph.util.mxRectangle)">apply</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#attachParent(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double)">attachParent</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;height)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>protected <a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#bridge(com.mxgraph.layout.mxCompactTreeLayout.Polyline,double,double,com.mxgraph.layout.mxCompactTreeLayout.Polyline,double,double)">bridge</a></span>&#8203;(<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;line1,
double&nbsp;x1,
double&nbsp;y1,
<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;line2,
double&nbsp;x2,
double&nbsp;y2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>protected <a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createLine(double,double,com.mxgraph.layout.mxCompactTreeLayout.Polyline)">createLine</a></span>&#8203;(double&nbsp;dx,
double&nbsp;dy,
<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;next)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>protected <a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#createNode(java.lang.Object)">createNode</a></span>&#8203;(java.lang.Object&nbsp;cell)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>protected <a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#dfs(java.lang.Object,java.lang.Object,java.util.Set)">dfs</a></span>&#8203;(java.lang.Object&nbsp;cell,
java.lang.Object&nbsp;parent,
java.util.Set&lt;java.lang.Object&gt;&nbsp;visited)</code></th>
<td class="colLast">
<div class="block">Does a depth first search starting at the specified cell.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(java.lang.Object)">execute</a></span>&#8203;(java.lang.Object&nbsp;parent)</code></th>
<td class="colLast">
<div class="block">Executes the layout for the children of the specified parent.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#execute(java.lang.Object,java.lang.Object)">execute</a></span>&#8203;(java.lang.Object&nbsp;parent,
java.lang.Object&nbsp;root)</code></th>
<td class="colLast">
<div class="block">Implements <mxGraphLayout.execute>.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>java.util.List&lt;java.lang.Object&gt;</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#findTreeRoots(java.lang.Object,boolean)">findTreeRoots</a></span>&#8203;(java.lang.Object&nbsp;parent,
boolean&nbsp;invert)</code></th>
<td class="colLast">
<div class="block">Returns all visible children in the given parent which do not have
incoming edges.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getGroupPadding()">getGroupPadding</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i11" class="rowColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getLevelDistance()">getLevelDistance</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i12" class="altColor">
<td class="colFirst"><code>int</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#getNodeDistance()">getNodeDistance</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i13" class="rowColor">
<td class="colFirst"><code>protected <a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#horizontalLayout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double,double,com.mxgraph.util.mxRectangle)">horizontalLayout</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;x0,
double&nbsp;y0,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i14" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isEdgeRouting()">isEdgeRouting</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i15" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isHorizontal()">isHorizontal</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i16" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isInvert()">isInvert</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i17" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isMoveTree()">isMoveTree</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i18" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isResetEdges()">isResetEdges</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i19" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isResizeParent()">isResizeParent</a></span>()</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i20" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#isVertexIgnored(java.lang.Object)">isVertexIgnored</a></span>&#8203;(java.lang.Object&nbsp;vertex)</code></th>
<td class="colLast">
<div class="block">Returns a boolean indicating if the given <mxCell> should be ignored as a
vertex.</div>
</td>
</tr>
<tr id="i21" class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#join(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">join</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i22" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#layout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">layout</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Starts the actual compact tree layout algorithm
at the given node.</div>
</td>
</tr>
<tr id="i23" class="rowColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#layoutLeaf(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">layoutLeaf</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i24" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#localEdgeProcessing(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">localEdgeProcessing</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Moves the specified node and all of its children by the given amount.</div>
</td>
</tr>
<tr id="i25" class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#merge(com.mxgraph.layout.mxCompactTreeLayout.Polygon,com.mxgraph.layout.mxCompactTreeLayout.Polygon)">merge</a></span>&#8203;(<a href="mxCompactTreeLayout.Polygon.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polygon</a>&nbsp;p1,
<a href="mxCompactTreeLayout.Polygon.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polygon</a>&nbsp;p2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i26" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#moveNode(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double,double)">moveNode</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;dx,
double&nbsp;dy)</code></th>
<td class="colLast">
<div class="block">Moves the specified node and all of its children by the given amount.</div>
</td>
</tr>
<tr id="i27" class="rowColor">
<td class="colFirst"><code>protected double</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#offset(double,double,double,double,double,double)">offset</a></span>&#8203;(double&nbsp;p1,
double&nbsp;p2,
double&nbsp;a1,
double&nbsp;a2,
double&nbsp;b1,
double&nbsp;b2)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i28" class="altColor">
<td class="colFirst"><code>protected void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#processNodeOutgoing(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">processNodeOutgoing</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</code></th>
<td class="colLast">
<div class="block">Separates the x position of edges as they connect to vertices</div>
</td>
</tr>
<tr id="i29" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setEdgeRouting(boolean)">setEdgeRouting</a></span>&#8203;(boolean&nbsp;edgeRouting)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i30" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setGroupPadding(int)">setGroupPadding</a></span>&#8203;(int&nbsp;groupPadding)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i31" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setHorizontal(boolean)">setHorizontal</a></span>&#8203;(boolean&nbsp;horizontal)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i32" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setInvert(boolean)">setInvert</a></span>&#8203;(boolean&nbsp;invert)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i33" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setLevelDistance(int)">setLevelDistance</a></span>&#8203;(int&nbsp;levelDistance)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i34" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setMoveTree(boolean)">setMoveTree</a></span>&#8203;(boolean&nbsp;moveTree)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i35" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setNodeDistance(int)">setNodeDistance</a></span>&#8203;(int&nbsp;nodeDistance)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i36" class="altColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setResetEdges(boolean)">setResetEdges</a></span>&#8203;(boolean&nbsp;resetEdges)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i37" class="rowColor">
<td class="colFirst"><code>void</code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#setResizeParent(boolean)">setResizeParent</a></span>&#8203;(boolean&nbsp;resizeParent)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr id="i38" class="altColor">
<td class="colFirst"><code>protected <a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a></code></td>
<th class="colSecond" scope="row"><code><span class="memberNameLink"><a href="#verticalLayout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,java.lang.Object,double,double,com.mxgraph.util.mxRectangle)">verticalLayout</a></span>&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
java.lang.Object&nbsp;parent,
double&nbsp;x0,
double&nbsp;y0,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</code></th>
<td class="colLast">&nbsp;</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a id="methods.inherited.from.class.com.mxgraph.layout.mxGraphLayout">
<!-- -->
</a>
<h3>Methods inherited from class&nbsp;com.mxgraph.layout.<a href="mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></h3>
<code><a href="mxGraphLayout.html#arrangeGroups(java.lang.Object%5B%5D,int)">arrangeGroups</a>, <a href="mxGraphLayout.html#getConstraint(java.lang.Object,java.lang.Object)">getConstraint</a>, <a href="mxGraphLayout.html#getConstraint(java.lang.Object,java.lang.Object,java.lang.Object,boolean)">getConstraint</a>, <a href="mxGraphLayout.html#getGraph()">getGraph</a>, <a href="mxGraphLayout.html#getParentOffset(java.lang.Object)">getParentOffset</a>, <a href="mxGraphLayout.html#getVertexBounds(java.lang.Object)">getVertexBounds</a>, <a href="mxGraphLayout.html#isEdgeIgnored(java.lang.Object)">isEdgeIgnored</a>, <a href="mxGraphLayout.html#isUseBoundingBox()">isUseBoundingBox</a>, <a href="mxGraphLayout.html#isVertexMovable(java.lang.Object)">isVertexMovable</a>, <a href="mxGraphLayout.html#moveCell(java.lang.Object,double,double)">moveCell</a>, <a href="mxGraphLayout.html#setEdgePoints(java.lang.Object,java.util.List)">setEdgePoints</a>, <a href="mxGraphLayout.html#setEdgeStyleEnabled(java.lang.Object,boolean)">setEdgeStyleEnabled</a>, <a href="mxGraphLayout.html#setOrthogonalEdge(java.lang.Object,boolean)">setOrthogonalEdge</a>, <a href="mxGraphLayout.html#setUseBoundingBox(boolean)">setUseBoundingBox</a>, <a href="mxGraphLayout.html#setVertexLocation(java.lang.Object,double,double)">setVertexLocation</a></code></li>
</ul>
<ul class="blockList">
<li class="blockList"><a id="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>
</section>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="field.detail">
<!-- -->
</a>
<h3>Field Detail</h3>
<a id="horizontal">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>horizontal</h4>
<pre>protected&nbsp;boolean horizontal</pre>
<div class="block">Specifies the orientation of the layout. Default is true.</div>
</li>
</ul>
<a id="invert">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>invert</h4>
<pre>protected&nbsp;boolean invert</pre>
<div class="block">Specifies if edge directions should be inverted. Default is false.</div>
</li>
</ul>
<a id="resizeParent">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>resizeParent</h4>
<pre>protected&nbsp;boolean resizeParent</pre>
<div class="block">If the parents should be resized to match the width/height of the
children. Default is true.</div>
</li>
</ul>
<a id="groupPadding">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>groupPadding</h4>
<pre>protected&nbsp;int groupPadding</pre>
<div class="block">Padding added to resized parents</div>
</li>
</ul>
<a id="parentsChanged">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>parentsChanged</h4>
<pre>protected&nbsp;java.util.Set&lt;java.lang.Object&gt; parentsChanged</pre>
<div class="block">A set of the parents that need updating based on children
process as part of the layout</div>
</li>
</ul>
<a id="moveTree">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveTree</h4>
<pre>protected&nbsp;boolean moveTree</pre>
<div class="block">Specifies if the tree should be moved to the top, left corner
if it is inside a top-level layer. Default is false.</div>
</li>
</ul>
<a id="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 id="levelDistance">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>levelDistance</h4>
<pre>protected&nbsp;int levelDistance</pre>
<div class="block">Holds the levelDistance. Default is 10.</div>
</li>
</ul>
<a id="nodeDistance">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>nodeDistance</h4>
<pre>protected&nbsp;int nodeDistance</pre>
<div class="block">Holds the nodeDistance. Default is 20.</div>
</li>
</ul>
<a id="prefHozEdgeSep">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prefHozEdgeSep</h4>
<pre>protected&nbsp;int prefHozEdgeSep</pre>
<div class="block">The preferred horizontal distance between edges exiting a vertex</div>
</li>
</ul>
<a id="prefVertEdgeOff">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>prefVertEdgeOff</h4>
<pre>protected&nbsp;int prefVertEdgeOff</pre>
<div class="block">The preferred vertical offset between edges exiting a vertex</div>
</li>
</ul>
<a id="minEdgeJetty">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>minEdgeJetty</h4>
<pre>protected&nbsp;int minEdgeJetty</pre>
<div class="block">The minimum distance for an edge jetty from a vertex</div>
</li>
</ul>
<a id="channelBuffer">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>channelBuffer</h4>
<pre>protected&nbsp;int channelBuffer</pre>
<div class="block">The size of the vertical buffer in the center of inter-rank channels
where edge control points should not be placed</div>
</li>
</ul>
<a id="edgeRouting">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>edgeRouting</h4>
<pre>protected&nbsp;boolean edgeRouting</pre>
<div class="block">Whether or not to apply the internal tree edge routing</div>
</li>
</ul>
</li>
</ul>
</section>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="constructor.detail">
<!-- -->
</a>
<h3>Constructor Detail</h3>
<a id="&lt;init&gt;(com.mxgraph.view.mxGraph)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mxCompactTreeLayout</h4>
<pre>public&nbsp;mxCompactTreeLayout&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>graph</code> - </dd>
</dl>
</li>
</ul>
<a id="&lt;init&gt;(com.mxgraph.view.mxGraph,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>mxCompactTreeLayout</h4>
<pre>public&nbsp;mxCompactTreeLayout&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph,
boolean&nbsp;horizontal)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>graph</code> - </dd>
<dd><code>horizontal</code> - </dd>
</dl>
</li>
</ul>
<a id="&lt;init&gt;(com.mxgraph.view.mxGraph,boolean,boolean)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>mxCompactTreeLayout</h4>
<pre>public&nbsp;mxCompactTreeLayout&#8203;(<a href="../view/mxGraph.html" title="class in com.mxgraph.view">mxGraph</a>&nbsp;graph,
boolean&nbsp;horizontal,
boolean&nbsp;invert)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>graph</code> - </dd>
<dd><code>horizontal</code> - </dd>
<dd><code>invert</code> - </dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
<!-- ============ METHOD DETAIL ========== -->
<section role="region">
<ul class="blockList">
<li class="blockList"><a id="method.detail">
<!-- -->
</a>
<h3>Method Detail</h3>
<a id="isVertexIgnored(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isVertexIgnored</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isVertexIgnored&#8203;(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><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="mxGraphLayout.html#isVertexIgnored(java.lang.Object)">isVertexIgnored</a></code>&nbsp;in class&nbsp;<code><a href="mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>vertex</code> - Object that represents the vertex to be tested.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>Returns true if the vertex should be ignored.</dd>
</dl>
</li>
</ul>
<a id="isHorizontal()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isHorizontal</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isHorizontal()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the horizontal</dd>
</dl>
</li>
</ul>
<a id="setHorizontal(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setHorizontal</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setHorizontal&#8203;(boolean&nbsp;horizontal)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>horizontal</code> - the horizontal to set</dd>
</dl>
</li>
</ul>
<a id="isInvert()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isInvert</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isInvert()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the invert</dd>
</dl>
</li>
</ul>
<a id="setInvert(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setInvert</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setInvert&#8203;(boolean&nbsp;invert)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>invert</code> - the invert to set</dd>
</dl>
</li>
</ul>
<a id="isResizeParent()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isResizeParent</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isResizeParent()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the resizeParent</dd>
</dl>
</li>
</ul>
<a id="setResizeParent(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResizeParent</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setResizeParent&#8203;(boolean&nbsp;resizeParent)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>resizeParent</code> - the resizeParent to set</dd>
</dl>
</li>
</ul>
<a id="isMoveTree()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isMoveTree</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isMoveTree()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the moveTree</dd>
</dl>
</li>
</ul>
<a id="setMoveTree(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setMoveTree</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setMoveTree&#8203;(boolean&nbsp;moveTree)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>moveTree</code> - the moveTree to set</dd>
</dl>
</li>
</ul>
<a id="isResetEdges()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isResetEdges</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isResetEdges()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the resetEdges</dd>
</dl>
</li>
</ul>
<a id="setResetEdges(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setResetEdges</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setResetEdges&#8203;(boolean&nbsp;resetEdges)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>resetEdges</code> - the resetEdges to set</dd>
</dl>
</li>
</ul>
<a id="isEdgeRouting()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isEdgeRouting</h4>
<pre class="methodSignature">public&nbsp;boolean&nbsp;isEdgeRouting()</pre>
</li>
</ul>
<a id="setEdgeRouting(boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setEdgeRouting</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setEdgeRouting&#8203;(boolean&nbsp;edgeRouting)</pre>
</li>
</ul>
<a id="getLevelDistance()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getLevelDistance</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getLevelDistance()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the levelDistance</dd>
</dl>
</li>
</ul>
<a id="setLevelDistance(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setLevelDistance</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setLevelDistance&#8203;(int&nbsp;levelDistance)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>levelDistance</code> - the levelDistance to set</dd>
</dl>
</li>
</ul>
<a id="getNodeDistance()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getNodeDistance</h4>
<pre class="methodSignature">public&nbsp;int&nbsp;getNodeDistance()</pre>
<dl>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>the nodeDistance</dd>
</dl>
</li>
</ul>
<a id="setNodeDistance(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setNodeDistance</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setNodeDistance&#8203;(int&nbsp;nodeDistance)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>nodeDistance</code> - the nodeDistance to set</dd>
</dl>
</li>
</ul>
<a id="getGroupPadding()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>getGroupPadding</h4>
<pre class="methodSignature">public&nbsp;double&nbsp;getGroupPadding()</pre>
</li>
</ul>
<a id="setGroupPadding(int)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>setGroupPadding</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;setGroupPadding&#8203;(int&nbsp;groupPadding)</pre>
</li>
</ul>
<a id="execute(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;execute&#8203;(java.lang.Object&nbsp;parent)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="mxIGraphLayout.html#execute(java.lang.Object)">mxIGraphLayout</a></code></span></div>
<div class="block">Executes the layout for the children of the specified parent.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="mxIGraphLayout.html#execute(java.lang.Object)">execute</a></code>&nbsp;in interface&nbsp;<code><a href="mxIGraphLayout.html" title="interface in com.mxgraph.layout">mxIGraphLayout</a></code></dd>
<dt><span class="overrideSpecifyLabel">Overrides:</span></dt>
<dd><code><a href="mxGraphLayout.html#execute(java.lang.Object)">execute</a></code>&nbsp;in class&nbsp;<code><a href="mxGraphLayout.html" title="class in com.mxgraph.layout">mxGraphLayout</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parent</code> - Parent cell that contains the children to be layed out.</dd>
</dl>
</li>
</ul>
<a id="execute(java.lang.Object,java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>execute</h4>
<pre class="methodSignature">public&nbsp;void&nbsp;execute&#8203;(java.lang.Object&nbsp;parent,
java.lang.Object&nbsp;root)</pre>
<div class="block">Implements <mxGraphLayout.execute>.
If the parent has any connected edges, then it is used as the root of
the tree. Else, <mxGraph.findTreeRoots> will be used to find a suitable
root node within the set of children of the given parent.</div>
</li>
</ul>
<a id="findTreeRoots(java.lang.Object,boolean)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>findTreeRoots</h4>
<pre class="methodSignature">public&nbsp;java.util.List&lt;java.lang.Object&gt;&nbsp;findTreeRoots&#8203;(java.lang.Object&nbsp;parent,
boolean&nbsp;invert)</pre>
<div class="block">Returns all visible children in the given parent which do not have
incoming edges. If the result is empty then the children with the
maximum difference between incoming and outgoing edges are returned.
This takes into account edges that are being promoted to the given
root due to invisible children or collapsed cells.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>parent</code> - Cell whose children should be checked.</dd>
<dd><code>invert</code> - Specifies if outgoing or incoming edges should be counted
for a tree root. If false then outgoing edges will be counted.</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>List of tree roots in parent.</dd>
</dl>
</li>
</ul>
<a id="moveNode(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double,double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>moveNode</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;moveNode&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;dx,
double&nbsp;dy)</pre>
<div class="block">Moves the specified node and all of its children by the given amount.</div>
</li>
</ul>
<a id="dfs(java.lang.Object,java.lang.Object,java.util.Set)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>dfs</h4>
<pre class="methodSignature">protected&nbsp;<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;dfs&#8203;(java.lang.Object&nbsp;cell,
java.lang.Object&nbsp;parent,
java.util.Set&lt;java.lang.Object&gt;&nbsp;visited)</pre>
<div class="block">Does a depth first search starting at the specified cell.
Makes sure the specified parent is never left by the
algorithm.</div>
</li>
</ul>
<a id="layout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>layout</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;layout&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</pre>
<div class="block">Starts the actual compact tree layout algorithm
at the given node.</div>
</li>
</ul>
<a id="horizontalLayout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double,double,com.mxgraph.util.mxRectangle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>horizontalLayout</h4>
<pre class="methodSignature">protected&nbsp;<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;horizontalLayout&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;x0,
double&nbsp;y0,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</pre>
</li>
</ul>
<a id="verticalLayout(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,java.lang.Object,double,double,com.mxgraph.util.mxRectangle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>verticalLayout</h4>
<pre class="methodSignature">protected&nbsp;<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;verticalLayout&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
java.lang.Object&nbsp;parent,
double&nbsp;x0,
double&nbsp;y0,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</pre>
</li>
</ul>
<a id="attachParent(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>attachParent</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;attachParent&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
double&nbsp;height)</pre>
</li>
</ul>
<a id="layoutLeaf(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>layoutLeaf</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;layoutLeaf&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</pre>
</li>
</ul>
<a id="join(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>join</h4>
<pre class="methodSignature">protected&nbsp;double&nbsp;join&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</pre>
</li>
</ul>
<a id="merge(com.mxgraph.layout.mxCompactTreeLayout.Polygon,com.mxgraph.layout.mxCompactTreeLayout.Polygon)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>merge</h4>
<pre class="methodSignature">protected&nbsp;double&nbsp;merge&#8203;(<a href="mxCompactTreeLayout.Polygon.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polygon</a>&nbsp;p1,
<a href="mxCompactTreeLayout.Polygon.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polygon</a>&nbsp;p2)</pre>
</li>
</ul>
<a id="offset(double,double,double,double,double,double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>offset</h4>
<pre class="methodSignature">protected&nbsp;double&nbsp;offset&#8203;(double&nbsp;p1,
double&nbsp;p2,
double&nbsp;a1,
double&nbsp;a2,
double&nbsp;b1,
double&nbsp;b2)</pre>
</li>
</ul>
<a id="bridge(com.mxgraph.layout.mxCompactTreeLayout.Polyline,double,double,com.mxgraph.layout.mxCompactTreeLayout.Polyline,double,double)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>bridge</h4>
<pre class="methodSignature">protected&nbsp;<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;bridge&#8203;(<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;line1,
double&nbsp;x1,
double&nbsp;y1,
<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;line2,
double&nbsp;x2,
double&nbsp;y2)</pre>
</li>
</ul>
<a id="createNode(java.lang.Object)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createNode</h4>
<pre class="methodSignature">protected&nbsp;<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;createNode&#8203;(java.lang.Object&nbsp;cell)</pre>
</li>
</ul>
<a id="apply(com.mxgraph.layout.mxCompactTreeLayout.TreeNode,com.mxgraph.util.mxRectangle)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>apply</h4>
<pre class="methodSignature">protected&nbsp;<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;apply&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node,
<a href="../util/mxRectangle.html" title="class in com.mxgraph.util">mxRectangle</a>&nbsp;bounds)</pre>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>node</code> - </dd>
<dd><code>bounds</code> - </dd>
<dt><span class="returnLabel">Returns:</span></dt>
</dl>
</li>
</ul>
<a id="createLine(double,double,com.mxgraph.layout.mxCompactTreeLayout.Polyline)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>createLine</h4>
<pre class="methodSignature">protected&nbsp;<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;createLine&#8203;(double&nbsp;dx,
double&nbsp;dy,
<a href="mxCompactTreeLayout.Polyline.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.Polyline</a>&nbsp;next)</pre>
</li>
</ul>
<a id="adjustParents()">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>adjustParents</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;adjustParents()</pre>
<div class="block">Adjust parent cells whose child geometries have changed. The default
implementation adjusts the group to just fit around the children with
a padding.</div>
</li>
</ul>
<a id="localEdgeProcessing(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">
<!-- -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>localEdgeProcessing</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;localEdgeProcessing&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</pre>
<div class="block">Moves the specified node and all of its children by the given amount.</div>
</li>
</ul>
<a id="processNodeOutgoing(com.mxgraph.layout.mxCompactTreeLayout.TreeNode)">
<!-- -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>processNodeOutgoing</h4>
<pre class="methodSignature">protected&nbsp;void&nbsp;processNodeOutgoing&#8203;(<a href="mxCompactTreeLayout.TreeNode.html" title="class in com.mxgraph.layout">mxCompactTreeLayout.TreeNode</a>&nbsp;node)</pre>
<div class="block">Separates the x position of edges as they connect to vertices</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>node</code> - the root node of the tree</dd>
</dl>
</li>
</ul>
</li>
</ul>
</section>
</li>
</ul>
</div>
</div>
</main>
<!-- ========= END OF CLASS DATA ========= -->
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../index.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="class-use/mxCompactTreeLayout.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"><p><b>mxGraph 4.0.2</b></p></div>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../allclasses.html">All&nbsp;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>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li><a href="#nested.class.summary">Nested</a>&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 id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small><font size=1>Copyright (c) 2010-2017 <a href="http://www.jgraph.com/"
target="_blank">Gaudenz Alder, JGraph Ltd</a>. All rights reserved.</font></small></p>
</footer>
</body>
</html>