maxGraph/docs/api/classes/CoordinateAssignment.html

172 lines
72 KiB
HTML
Raw Normal View History

Finish converting core to ts, JSDoc conversion, consistency+convention changes, example bugfixes (#70) * reorganised directories; removed mx prefix * reduced directory hierarchies; removed mx prefix; type fixes * convert remaining javascript to ts * fix/add types * add type defs * type updates; moved codecs to where they're used * reorganise constants into enums+type additions * removed "Function:" and "Variable:" prefixes from comments, as they aren't needed in JSDoc * removed "Function:", "Variable:" and "Class:" prefixes from comments, as they aren't needed in JSDoc * removed "Function:" prefixes from comments, as they aren't needed in JSDoc * minor changes * convert code example blocks to markdown * module casing updates * converted parameter function documentation to JSDoc * documentation+type updates * removed react subdir (for now) * reorganised various `utils` functions into different files * type updates/bugfixes/workarounds * rename Rubberband and CellEditor to be *Handler to match the other plugins * move codec classes to where they're used to reduce cyclic dependencies * move codec classes to where they're used to reduce cyclic dependencies * type updates/reorganize layout file structure * renamed various files for consistency * import fixes * renamed GraphHandler SelectionHander and various fixes * convert EventObject parameters to objects * add basic better-docs config * update better-docs config * bugfix for shared variables in Graph persisting across instances * fixed accessing handlers in examples; renamed Model to GraphModel * fixed accessing handlers in examples; renamed Model to GraphModel * restored selection model * bugfix * renamed getModel to getDataModel * changed to use graph.batchUpdate() to reduce lines of code * changed to use graph.batchUpdate() to reduce lines of code * finished annotations+added TypeDoc * convert remaining Cell[] instances to CellArray * convert NaturalDocs links to JSDoc
2022-01-08 01:49:35 +00:00
<!DOCTYPE html><html class="default"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="IE=edge"/><title>CoordinateAssignment | @maxgraph/core</title><meta name="description" content="Documentation for @maxgraph/core"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="stylesheet" href="../assets/style.css"/><link rel="stylesheet" href="../assets/highlight.css"/><script async src="../assets/search.js" id="search-script"></script></head><body><script>document.body.classList.add(localStorage.getItem("tsd-theme") || "os")</script><header><div class="tsd-page-toolbar"><div class="container"><div class="table-wrap"><div class="table-cell" id="tsd-search" data-base=".."><div class="field"><label for="tsd-search-field" class="tsd-widget search no-caption">Search</label><input type="text" id="tsd-search-field"/></div><ul class="results"><li class="state loading">Preparing search index...</li><li class="state failure">The search index is not available</li></ul><a href="../index.html" class="title">@maxgraph/core</a></div><div class="table-cell" id="tsd-widgets"><div id="tsd-filter"><a href="#" class="tsd-widget options no-caption" data-toggle="options">Options</a><div class="tsd-filter-group"><div class="tsd-select" id="tsd-filter-visibility"><span class="tsd-select-label">All</span><ul class="tsd-select-list"><li data-value="public">Public</li><li data-value="protected">Public/Protected</li><li data-value="private" class="selected">All</li></ul></div> <input type="checkbox" id="tsd-filter-inherited" checked/><label class="tsd-widget" for="tsd-filter-inherited">Inherited</label></div></div><a href="#" class="tsd-widget menu no-caption" data-toggle="menu">Menu</a></div></div></div></div><div class="tsd-page-title"><div class="container"><ul class="tsd-breadcrumb"><li><a href="../index.html">@maxgraph/core</a></li><li><a href="CoordinateAssignment.html">CoordinateAssignment</a></li></ul><h1>Class CoordinateAssignment</h1></div></div></header><div class="container container-main"><div class="row"><div class="col-8 col-content"><section class="tsd-panel tsd-comment"><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sets the horizontal locations of node and edge dummy nodes on each layer.
Uses median down and up weighings as well as heuristics to straighten edges as
far as possible.</p>
</div><div><p>Constructor: mxCoordinateAssignment</p>
<p>Creates a coordinate assignment.</p>
<p>Arguments:</p>
<p>intraCellSpacing - the minimum buffer between cells on the same rank
interRankCellSpacing - the minimum distance between cells on adjacent ranks
orientation - the position of the root node(s) relative to the graph
initialX - the leftmost coordinate node placement starts at</p>
</div></div></section><section class="tsd-panel tsd-hierarchy"><h3>Hierarchy</h3><ul class="tsd-hierarchy"><li><a href="HierarchicalLayoutStage.html" class="tsd-signature-type" data-tsd-kind="Class">HierarchicalLayoutStage</a><ul class="tsd-hierarchy"><li><span class="target">CoordinateAssignment</span></li></ul></li></ul></section><section class="tsd-panel-group tsd-index-group"><h2>Index</h2><section class="tsd-panel tsd-index-panel"><div class="tsd-index-content"><section class="tsd-index-section "><h3>Constructors</h3><ul class="tsd-index-list"><li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a href="CoordinateAssignment.html#constructor" class="tsd-kind-icon">constructor</a></li></ul></section><section class="tsd-index-section "><h3>Properties</h3><ul class="tsd-index-list"><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#channelBuffer" class="tsd-kind-icon">channel<wbr/>Buffer</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#currentXDelta" class="tsd-kind-icon">currentXDelta</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#fineTuning" class="tsd-kind-icon">fine<wbr/>Tuning</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#groupPadding" class="tsd-kind-icon">group<wbr/>Padding</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#initialX" class="tsd-kind-icon">initialX</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#interRankCellSpacing" class="tsd-kind-icon">inter<wbr/>Rank<wbr/>Cell<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#intraCellSpacing" class="tsd-kind-icon">intra<wbr/>Cell<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#jettyPositions" class="tsd-kind-icon">jetty<wbr/>Positions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#layout" class="tsd-kind-icon">layout</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#limitX" class="tsd-kind-icon">limitX</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#maxIterations" class="tsd-kind-icon">max<wbr/>Iterations</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#minEdgeJetty" class="tsd-kind-icon">min<wbr/>Edge<wbr/>Jetty</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#nextLayerConnectedCache" class="tsd-kind-icon">next<wbr/>Layer<wbr/>Connected<wbr/>Cache</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#orientation" class="tsd-kind-icon">orientation</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#parallelEdgeSpacing" class="tsd-kind-icon">parallel<wbr/>Edge<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#prefHozEdgeSep" class="tsd-kind-icon">pref<wbr/>Hoz<wbr/>Edge<wbr/>Sep</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#prefVertEdgeOff" class="tsd-kind-icon">pref<wbr/>Vert<wbr/>Edge<wbr/>Off</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#previousLayerConnectedCache" class="tsd-kind-icon">previous<wbr/>Layer<wbr/>Connected<wbr/>Cache</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#rankBottomY" class="tsd-kind-icon">rank<wbr/>BottomY</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#rankTopY" class="tsd-kind-icon">rank<wbr/>TopY</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#rankWidths" class="tsd-kind-icon">rank<wbr/>Widths</a></li><li class="tsd-kind-prope
<p>The size of the vertical buffer in the center of inter-rank channels
where edge control points should not be placed Default is 4.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="currentXDelta" class="tsd-anchor"></a><h3>currentXDelta</h3><div class="tsd-signature tsd-kind-icon">currentXDelta<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L137">view/layout/hierarchical/CoordinateAssignment.ts:137</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The sum of x-displacements for the current iteration</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="fineTuning" class="tsd-anchor"></a><h3>fine<wbr/>Tuning</h3><div class="tsd-signature tsd-kind-icon">fine<wbr/>Tuning<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">boolean</span><span class="tsd-signature-symbol"> = true</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L173">view/layout/hierarchical/CoordinateAssignment.ts:173</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Whether or not to perform local optimisations and iterate multiple times
through the algorithm. Default is true.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="groupPadding" class="tsd-anchor"></a><h3>group<wbr/>Padding</h3><div class="tsd-signature tsd-kind-icon">group<wbr/>Padding<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 10</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L188">view/layout/hierarchical/CoordinateAssignment.ts:188</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Padding added to resized parents Default is 10.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="initialX" class="tsd-anchor"></a><h3>initialX</h3><div class="tsd-signature tsd-kind-icon">initialX<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L127">view/layout/hierarchical/CoordinateAssignment.ts:127</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The minimum x position node placement starts at</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="interRankCellSpacing" class="tsd-anchor"></a><h3>inter<wbr/>Rank<wbr/>Cell<wbr/>Spacing</h3><div class="tsd-signature tsd-kind-icon">inter<wbr/>Rank<wbr/>Cell<wbr/>Spacing<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 100</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L73">view/layout/hierarchical/CoordinateAssignment.ts:73</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The minimum distance between cells on adjacent ranks. Default is 100.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="intraCellSpacing" class="tsd-anchor"></a><h3>intra<wbr/>Cell<wbr/>Spacing</h3><div class="tsd-signature tsd-kind-icon">intra<wbr/>Cell<wbr/>Spacing<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 30</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L68">view/layout/hierarchical/CoordinateAssignment.ts:68</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The minimum buffer between cells on the same rank. Default is 30.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="jettyPositions" class="tsd-anchor"></a><h3>jetty<wbr/>Positions</h3><div class="tsd-signature tsd-kind-icon">jetty<wbr/>Positions<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-symbol">{}</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L116">view/layout/hierarchical/CoordinateAssignment.ts:116</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Map of internal edges and (x,y) pair of positions of the start and end jetty
for that edge where it connects to the source and target vertices.
Note this should technically be a WeakHashMap, but since JS does not
have an equivalent, housekeeping must be performed before using.
i.e. check all edges are still in the model and clear the values.
Note that the y co-ord is the offset of the jetty, not the
absolute point</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="layout" class="tsd-anchor"></a><h3>layout</h3><div class="tsd-signature tsd-kind-icon">layout<span class="tsd-signature-symbol">:</span> <a href="HierarchicalLayout.html" class="tsd-signature-type" data-tsd-kind="Class">HierarchicalLayout</a><span class="tsd-signature-symbol"> | </span><a href="SwimlaneLayout.html" class="tsd-signature-type" data-tsd-kind="Class">SwimlaneLayout</a></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L63">view/layout/hierarchical/CoordinateAssignment.ts:63</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Reference to the enclosing <HierarchicalLayout>.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="limitX" class="tsd-anchor"></a><h3>limitX</h3><div class="tsd-signature tsd-kind-icon">limitX<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L132">view/layout/hierarchical/CoordinateAssignment.ts:132</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The maximum x value this positioning lays up to</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="maxIterations" class="tsd-anchor"></a><h3>max<wbr/>Iterations</h3><div class="tsd-signature tsd-kind-icon">max<wbr/>Iterations<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 8</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L84">view/layout/hierarchical/CoordinateAssignment.ts:84</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The number of heuristic iterations to run. Default is 8.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="minEdgeJetty" class="tsd-anchor"></a><h3>min<wbr/>Edge<wbr/>Jetty</h3><div class="tsd-signature tsd-kind-icon">min<wbr/>Edge<wbr/>Jetty<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 12</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L99">view/layout/hierarchical/CoordinateAssignment.ts:99</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The minimum distance for an edge jetty from a vertex Default is 12.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="nextLayerConnectedCache" class="tsd-anchor"></a><h3>next<wbr/>Layer<wbr/>Connected<wbr/>Cache</h3><div class="tsd-signature tsd-kind-icon">next<wbr/>Layer<wbr/>Connected<wbr/>Cache<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L178">view/layout/hierarchical/CoordinateAssignment.ts:178</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>A store of connections to the layer above for speed</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="orientation" class="tsd-anchor"></a><h3>orientation</h3><div class="tsd-signature tsd-kind-icon">orientation<span class="tsd-signature-symbol">:</span> <a href="../enums/constants.DIRECTION.html" class="tsd-signature-type" data-tsd-kind="Enumeration">DIRECTION</a><span class="tsd-signature-symbol"> = DIRECTION.NORTH</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L122">view/layout/hierarchical/CoordinateAssignment.ts:122</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The position of the root ( start ) node(s) relative to the rest of the
laid out graph. Default is &lt;mxConstants.DIRECTION.NORTH&gt;.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="parallelEdgeSpacing" class="tsd-anchor"></a><h3>parallel<wbr/>Edge<wbr/>Spacing</h3><div class="tsd-signature tsd-kind-icon">parallel<wbr/>Edge<wbr/>Spacing<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 10</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L79">view/layout/hierarchical/CoordinateAssignment.ts:79</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The distance between each parallel edge on each ranks for long edges.
Default is 10.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="prefHozEdgeSep" class="tsd-anchor"></a><h3>pref<wbr/>Hoz<wbr/>Edge<wbr/>Sep</h3><div class="tsd-signature tsd-kind-icon">pref<wbr/>Hoz<wbr/>Edge<wbr/>Sep<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 5</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L89">view/layout/hierarchical/CoordinateAssignment.ts:89</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The preferred horizontal distance between edges exiting a vertex Default is 5.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="prefVertEdgeOff" class="tsd-anchor"></a><h3>pref<wbr/>Vert<wbr/>Edge<wbr/>Off</h3><div class="tsd-signature tsd-kind-icon">pref<wbr/>Vert<wbr/>Edge<wbr/>Off<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = 2</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L94">view/layout/hierarchical/CoordinateAssignment.ts:94</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The preferred vertical offset between edges exiting a vertex Default is 2.</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="previousLayerConnectedCache" class="tsd-anchor"></a><h3>previous<wbr/>Layer<wbr/>Connected<wbr/>Cache</h3><div class="tsd-signature tsd-kind-icon">previous<wbr/>Layer<wbr/>Connected<wbr/>Cache<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L183">view/layout/hierarchical/CoordinateAssignment.ts:183</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>A store of connections to the layer below for speed</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="rankBottomY" class="tsd-anchor"></a><h3>rank<wbr/>BottomY</h3><div class="tsd-signature tsd-kind-icon">rank<wbr/>BottomY<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L152">view/layout/hierarchical/CoordinateAssignment.ts:152</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Internal cache of bottom-most value of Y for each rank</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="rankTopY" class="tsd-anchor"></a><h3>rank<wbr/>TopY</h3><div class="tsd-signature tsd-kind-icon">rank<wbr/>TopY<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L147">view/layout/hierarchical/CoordinateAssignment.ts:147</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Internal cache of top-most values of Y for each rank</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="rankWidths" class="tsd-anchor"></a><h3>rank<wbr/>Widths</h3><div class="tsd-signature tsd-kind-icon">rank<wbr/>Widths<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L162">view/layout/hierarchical/CoordinateAssignment.ts:162</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The width of all the ranks</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="rankY" class="tsd-anchor"></a><h3>rankY</h3><div class="tsd-signature tsd-kind-icon">rankY<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L167">view/layout/hierarchical/CoordinateAssignment.ts:167</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The Y-coordinate of all the ranks</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="widestRank" class="tsd-anchor"></a><h3>widest<wbr/>Rank</h3><div class="tsd-signature tsd-kind-icon">widest<wbr/>Rank<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L142">view/layout/hierarchical/CoordinateAssignment.ts:142</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The rank that has the widest x position</p>
</div></div></section><section class="tsd-panel tsd-member tsd-kind-property tsd-parent-kind-class"><a id="widestRankValue" class="tsd-anchor"></a><h3>widest<wbr/>Rank<wbr/>Value</h3><div class="tsd-signature tsd-kind-icon">widest<wbr/>Rank<wbr/>Value<span class="tsd-signature-symbol">:</span> <span class="tsd-signature-type">null</span><span class="tsd-signature-symbol"> | </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol"> = null</span></div><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L157">view/layout/hierarchical/CoordinateAssignment.ts:157</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>The X-coordinate of the edge of the widest rank</p>
</div></div></section></section><section class="tsd-panel-group tsd-member-group "><h2>Methods</h2><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="calculateWidestRank" class="tsd-anchor"></a><h3>calculate<wbr/>Widest<wbr/>Rank</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">calculate<wbr/>Widest<wbr/>Rank<span class="tsd-signature-symbol">(</span>graph<span class="tsd-signature-symbol">: </span><a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L738">view/layout/hierarchical/CoordinateAssignment.ts:738</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Calculates the width rank in the hierarchy. Also set the y value of each
rank whilst performing the calculation</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>graph: <a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the facade describing the input graph</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="calculatedWeightedValue" class="tsd-anchor"></a><h3>calculated<wbr/>Weighted<wbr/>Value</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">calculated<wbr/>Weighted<wbr/>Value<span class="tsd-signature-symbol">(</span>currentCell<span class="tsd-signature-symbol">: </span><a href="Cell.html" class="tsd-signature-type" data-tsd-kind="Class">Cell</a>, collection<span class="tsd-signature-symbol">: </span><a href="GraphAbstractHierarchyCell.html" class="tsd-signature-type" data-tsd-kind="Class">GraphAbstractHierarchyCell</a><span class="tsd-signature-symbol">[]</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L591">view/layout/hierarchical/CoordinateAssignment.ts:591</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Calculates the priority the specified cell has based on the type of its
cell and the cells it is connected to on the next layer</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>currentCell: <a href="Cell.html" class="tsd-signature-type" data-tsd-kind="Class">Cell</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the cell whose weight is to be calculated</p>
</div></div></li><li><h5>collection: <a href="GraphAbstractHierarchyCell.html" class="tsd-signature-type" data-tsd-kind="Class">GraphAbstractHierarchyCell</a><span class="tsd-signature-symbol">[]</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the cells the specified cell is connected to</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><a id="execute" class="tsd-anchor"></a><h3>execute</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class tsd-is-overwrite"><li class="tsd-signature tsd-kind-icon">execute<span class="tsd-signature-symbol">(</span>parent<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">any</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><p>Overrides <a href="HierarchicalLayoutStage.html">HierarchicalLayoutStage</a>.<a href="HierarchicalLayoutStage.html#execute">execute</a></p><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L216">view/layout/hierarchical/CoordinateAssignment.ts:216</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>A basic horizontal coordinate assignment algorithm</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>parent: <span class="tsd-signature-type">any</span></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="initialCoords" class="tsd-anchor"></a><h3>initial<wbr/>Coords</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">initial<wbr/>Coords<span class="tsd-signature-symbol">(</span>facade<span class="tsd-signature-symbol">: </span><a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L644">view/layout/hierarchical/CoordinateAssignment.ts:644</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sets up the layout in an initial positioning. The ranks are all centered
as much as possible along the middle vertex in each rank. The other cells
are then placed as close as possible on either side.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>facade: <a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the facade describing the input graph</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="localEdgeProcessing" class="tsd-anchor"></a><h3>local<wbr/>Edge<wbr/>Processing</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">local<wbr/>Edge<wbr/>Processing<span class="tsd-signature-symbol">(</span>model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L1050">view/layout/hierarchical/CoordinateAssignment.ts:1050</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Separates the x position of edges as they connect to vertices</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layout model</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="medianPos" class="tsd-anchor"></a><h3>median<wbr/>Pos</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">median<wbr/>Pos<span class="tsd-signature-symbol">(</span>i<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L415">view/layout/hierarchical/CoordinateAssignment.ts:415</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Performs one median positioning sweep in one direction</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>i: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the iteration of the whole process</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="medianXValue" class="tsd-anchor"></a><h3>medianXValue</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">medianXValue<span class="tsd-signature-symbol">(</span>connectedCells<span class="tsd-signature-symbol">: </span><a href="GraphAbstractHierarchyCell.html" class="tsd-signature-type" data-tsd-kind="Class">GraphAbstractHierarchyCell</a><span class="tsd-signature-symbol">[]</span>, rankValue<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L615">view/layout/hierarchical/CoordinateAssignment.ts:615</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Calculates the median position of the connected cell on the specified
rank</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>connectedCells: <a href="GraphAbstractHierarchyCell.html" class="tsd-signature-type" data-tsd-kind="Class">GraphAbstractHierarchyCell</a><span class="tsd-signature-symbol">[]</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the cells the candidate connects to on this level</p>
</div></div></li><li><h5>rankValue: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layer number of this rank</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">number</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="minNode" class="tsd-anchor"></a><h3>min<wbr/>Node</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">min<wbr/>Node<span class="tsd-signature-symbol">(</span>model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L279">view/layout/hierarchical/CoordinateAssignment.ts:279</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Performs one median positioning sweep in both directions</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="minPath" class="tsd-anchor"></a><h3>min<wbr/>Path</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">min<wbr/>Path<span class="tsd-signature-symbol">(</span>graph<span class="tsd-signature-symbol">: </span><a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L844">view/layout/hierarchical/CoordinateAssignment.ts:844</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Straightens out chains of virtual nodes where possibleacade to those stored after this layout
processing step has completed.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>graph: <a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the facade describing the input graph</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="printStatus" class="tsd-anchor"></a><h3>print<wbr/>Status</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">print<wbr/>Status<span class="tsd-signature-symbol">(</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L193">view/layout/hierarchical/CoordinateAssignment.ts:193</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Utility method to display current positions</p>
</div></div><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="processReversedEdge" class="tsd-anchor"></a><h3>process<wbr/>Reversed<wbr/>Edge</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">process<wbr/>Reversed<wbr/>Edge<span class="tsd-signature-symbol">(</span>edge<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a>, realEdge<span class="tsd-signature-symbol">: </span><a href="Cell.html" class="tsd-signature-type" data-tsd-kind="Class">Cell</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L1439">view/layout/hierarchical/CoordinateAssignment.ts:1439</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Hook to add additional processing</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>edge: <a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the hierarchical model edge</p>
</div></div></li><li><h5>realEdge: <a href="Cell.html" class="tsd-signature-type" data-tsd-kind="Class">Cell</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the real edge in the graph</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="rankCoordinates" class="tsd-anchor"></a><h3>rank<wbr/>Coordinates</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">rank<wbr/>Coordinates<span class="tsd-signature-symbol">(</span>rankValue<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, graph<span class="tsd-signature-symbol">: </span><a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L671">view/layout/hierarchical/CoordinateAssignment.ts:671</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sets up the layout in an initial positioning. All the first cells in each
rank are moved to the left and the rest of the rank inserted as close
together as their size and buffering permits. This method works on just
the specified rank.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>rankValue: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the current rank being processed</p>
</div></div></li><li><h5>graph: <a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the facade describing the input graph</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="rankMedianPosition" class="tsd-anchor"></a><h3>rank<wbr/>Median<wbr/>Position</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">rank<wbr/>Median<wbr/>Position<span class="tsd-signature-symbol">(</span>rankValue<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a>, nextRankValue<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L438">view/layout/hierarchical/CoordinateAssignment.ts:438</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Performs median minimisation over one rank.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>rankValue: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layer number of this rank</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>an internal model of the hierarchical layout</p>
</div></div></li><li><h5>nextRankValue: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layer number whose connected cels are to be laid out
relative to</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="repositionValid" class="tsd-anchor"></a><h3>reposition<wbr/>Valid</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">reposition<wbr/>Valid<span class="tsd-signature-symbol">(</span>model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a>, cell<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyNode.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyNode</a><span class="tsd-signature-symbol"> | </span><a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a>, rank<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span>, position<span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">number</span><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">boolean</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L955">view/layout/hierarchical/CoordinateAssignment.ts:955</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Determines whether or not a node may be moved to the specified x
position on the specified rank</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layout model</p>
</div></div></li><li><h5>cell: <a href="GraphHierarchyNode.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyNode</a><span class="tsd-signature-symbol"> | </span><a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the cell being analysed</p>
</div></div></li><li><h5>rank: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layer of the cell</p>
</div></div></li><li><h5>position: <span class="tsd-signature-type">number</span></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the x position being sought</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">boolean</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="setCellLocations" class="tsd-anchor"></a><h3>set<wbr/>Cell<wbr/>Locations</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">set<wbr/>Cell<wbr/>Locations<span class="tsd-signature-symbol">(</span>graph<span class="tsd-signature-symbol">: </span><a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a>, model<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L1009">view/layout/hierarchical/CoordinateAssignment.ts:1009</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Sets the cell locations in the facade to those stored after this layout
processing step has completed.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>graph: <a href="Graph.html" class="tsd-signature-type" data-tsd-kind="Class">Graph</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the input graph</p>
</div></div></li><li><h5>model: <a href="GraphHierarchyModel.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyModel</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the layout model</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="setEdgePosition" class="tsd-anchor"></a><h3>set<wbr/>Edge<wbr/>Position</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">set<wbr/>Edge<wbr/>Position<span class="tsd-signature-symbol">(</span>cell<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L1184">view/layout/hierarchical/CoordinateAssignment.ts:1184</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Fixes the control points</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>cell: <a href="GraphHierarchyEdge.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyEdge</a></h5></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section><section class="tsd-panel tsd-member tsd-kind-method tsd-parent-kind-class"><a id="setVertexLocation" class="tsd-anchor"></a><h3>set<wbr/>Vertex<wbr/>Location</h3><ul class="tsd-signatures tsd-kind-method tsd-parent-kind-class"><li class="tsd-signature tsd-kind-icon">set<wbr/>Vertex<wbr/>Location<span class="tsd-signature-symbol">(</span>cell<span class="tsd-signature-symbol">: </span><a href="GraphHierarchyNode.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyNode</a><span class="tsd-signature-symbol">)</span><span class="tsd-signature-symbol">: </span><span class="tsd-signature-type">void</span></li></ul><ul class="tsd-descriptions"><li class="tsd-description"><aside class="tsd-sources"><ul><li>Defined in <a href="https://github.com/maxgraph/maxgraph/blob/598b60e2f/packages/core/src/view/layout/hierarchical/CoordinateAssignment.ts#L1412">view/layout/hierarchical/CoordinateAssignment.ts:1412</a></li></ul></aside><div class="tsd-comment tsd-typography"><div class="lead">
<p>Fixes the position of the specified vertex.</p>
</div></div><h4 class="tsd-parameters-title">Parameters</h4><ul class="tsd-parameters"><li><h5>cell: <a href="GraphHierarchyNode.html" class="tsd-signature-type" data-tsd-kind="Class">GraphHierarchyNode</a></h5><div class="tsd-comment tsd-typography"><div class="lead">
<p>the vertex to position</p>
</div></div></li></ul><h4 class="tsd-returns-title">Returns <span class="tsd-signature-type">void</span></h4></li></ul></section></section></div><div class="col-4 col-menu menu-sticky-wrap menu-highlight"><nav class="tsd-navigation primary"><ul><li class=""><a href="../index.html">Exports</a></li><li class=" tsd-kind-namespace"><a href="../modules/DomHelpers.html">Dom<wbr/>Helpers</a></li><li class=" tsd-kind-namespace"><a href="../modules/cloneUtils.html">clone<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/constants.html">constants</a></li><li class=" tsd-kind-namespace"><a href="../modules/domUtils.html">dom<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/eventUtils.html">event<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/gestureUtils.html">gesture<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/mathUtils.html">math<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/stringUtils.html">string<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/styleUtils.html">style<wbr/>Utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/utils.html">utils</a></li><li class=" tsd-kind-namespace"><a href="../modules/xmlUtils.html">xml<wbr/>Utils</a></li></ul></nav><nav class="tsd-navigation secondary menu-sticky"><ul><li class="current tsd-kind-class"><a href="CoordinateAssignment.html" class="tsd-kind-icon">Coordinate<wbr/>Assignment</a><ul><li class="tsd-kind-constructor tsd-parent-kind-class tsd-is-overwrite"><a href="CoordinateAssignment.html#constructor" class="tsd-kind-icon">constructor</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#channelBuffer" class="tsd-kind-icon">channel<wbr/>Buffer</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#currentXDelta" class="tsd-kind-icon">currentXDelta</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#fineTuning" class="tsd-kind-icon">fine<wbr/>Tuning</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#groupPadding" class="tsd-kind-icon">group<wbr/>Padding</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#initialX" class="tsd-kind-icon">initialX</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#interRankCellSpacing" class="tsd-kind-icon">inter<wbr/>Rank<wbr/>Cell<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#intraCellSpacing" class="tsd-kind-icon">intra<wbr/>Cell<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#jettyPositions" class="tsd-kind-icon">jetty<wbr/>Positions</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#layout" class="tsd-kind-icon">layout</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#limitX" class="tsd-kind-icon">limitX</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#maxIterations" class="tsd-kind-icon">max<wbr/>Iterations</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#minEdgeJetty" class="tsd-kind-icon">min<wbr/>Edge<wbr/>Jetty</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#nextLayerConnectedCache" class="tsd-kind-icon">next<wbr/>Layer<wbr/>Connected<wbr/>Cache</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#orientation" class="tsd-kind-icon">orientation</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#parallelEdgeSpacing" class="tsd-kind-icon">parallel<wbr/>Edge<wbr/>Spacing</a></li><li class="tsd-kind-property tsd-parent-kind-class"><a href="CoordinateAssignment.html#prefHozEdgeSep" class="tsd-kind-icon">pref<wbr/>Hoz<wbr/