diglettk
Version:
A medical imaging toolkit, built on top of vtk.js
3,450 lines (862 loc) • 39.9 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>Global - DigleTTK</title>
<meta name="keywords" content="medical, imaging, dicom, webgl" />
<meta name="keyword" content="medical, imaging, dicom, webgl" />
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc.css">
<script src="scripts/nav.js" defer></script>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<input type="checkbox" id="nav-trigger" class="nav-trigger" />
<label for="nav-trigger" class="navicon-button x">
<div class="navicon"></div>
</label>
<label for="nav-trigger" class="overlay"></label>
<nav >
<input type="text" id="nav-search" placeholder="Search" />
<h2><a href="index.html">Home</a></h2><h2><a href="https://github.com/dvisionlab/DigletTK" target="_blank" class="menu-item" id="repository" >Github repo</a></h2><h3>Classes</h3><ul><li><a href="baseView.html">baseView</a></li><li><a href="MPRManager.html">MPRManager</a><ul class='methods'><li data-type='method' style='display: none;'><a href="MPRManager.html#destroy">destroy</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#getInitialState">getInitialState</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#onRotate">onRotate</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#onThickness">onThickness</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#resize">resize</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#setImage">setImage</a></li><li data-type='method' style='display: none;'><a href="MPRManager.html#setTool">setTool</a></li></ul></li><li><a href="VRView.html">VRView</a><ul class='methods'><li data-type='method' style='display: none;'><a href="VRView.html#_initCropWidget">_initCropWidget</a></li><li data-type='method' style='display: none;'><a href="VRView.html#_initPicker">_initPicker</a></li><li data-type='method' style='display: none;'><a href="VRView.html#addLandmarks">addLandmarks</a></li><li data-type='method' style='display: none;'><a href="VRView.html#addSurface">addSurface</a></li><li data-type='method' style='display: none;'><a href="VRView.html#destroy">destroy</a></li><li data-type='method' style='display: none;'><a href="VRView.html#getLutList">getLutList</a></li><li data-type='method' style='display: none;'><a href="VRView.html#resetMeasurementState">resetMeasurementState</a></li><li data-type='method' style='display: none;'><a href="VRView.html#resetView">resetView</a></li><li data-type='method' style='display: none;'><a href="VRView.html#resize">resize</a></li><li data-type='method' style='display: none;'><a href="VRView.html#setImage">setImage</a></li><li data-type='method' style='display: none;'><a href="VRView.html#setSurfaceVisibility">setSurfaceVisibility</a></li><li data-type='method' style='display: none;'><a href="VRView.html#setTool">setTool</a></li><li data-type='method' style='display: none;'><a href="VRView.html#turnPickingOff">turnPickingOff</a></li><li data-type='method' style='display: none;'><a href="VRView.html#turnPickingOn">turnPickingOn</a></li><li data-type='method' style='display: none;'><a href="VRView.html#updateLandmarkPosition">updateLandmarkPosition</a></li><li data-type='method' style='display: none;'><a href="VRView.html#updateSurface">updateSurface</a></li></ul></li></ul><h3>Global</h3><ul><li><a href="global.html#addSphereInPoint">addSphereInPoint</a></li><li><a href="global.html#applyAngleStrategy">applyAngleStrategy</a></li><li><a href="global.html#applyLengthStrategy">applyLengthStrategy</a></li><li><a href="global.html#buildVtkVolume">buildVtkVolume</a></li><li><a href="global.html#createRGBStringFromRGBValues">createRGBStringFromRGBValues</a></li><li><a href="global.html#createSurfaceActor">createSurfaceActor</a></li><li><a href="global.html#createVolumeActor">createVolumeActor</a></li><li><a href="global.html#degrees2radians">degrees2radians</a></li><li><a href="global.html#fitToWindow">fitToWindow</a></li><li><a href="global.html#getAbsoluteRange">getAbsoluteRange</a></li><li><a href="global.html#getCroppingPlanes">getCroppingPlanes</a></li><li><a href="global.html#getRelativeRange">getRelativeRange</a></li><li><a href="global.html#getVideoCardInfo">getVideoCardInfo</a></li><li><a href="global.html#getVOI">getVOI</a></li><li><a href="global.html#getVolumeCenter">getVolumeCenter</a></li><li><a href="global.html#larvitarInitialized">larvitarInitialized</a></li><li><a href="global.html#setActorProperties">setActorProperties</a></li><li><a href="global.html#setCamera">setCamera</a></li><li><a href="global.html#setupCropWidget">setupCropWidget</a></li><li><a href="global.html#setupPickingPlane">setupPickingPlane</a></li><li><a href="global.html#State">State</a></li></ul>
</nav>
<div id="main">
<h1 class="page-title">Global</h1>
<section>
<header>
<h2>
</h2>
</header>
<article>
<div class="container-overview">
<dl class="details">
</dl>
</div>
<h3 class="subsection-title">Members</h3>
<h4 class="name" id="larvitarInitialized"><span class="type-signature"></span>larvitarInitialized<span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line109">line 109</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Utility function to read, parse, load and render a dcm serie with larvitar (tested with larvitar 1.2.7)</p>
</div>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id="addSphereInPoint"><span class="type-signature"></span>addSphereInPoint<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line576">line 576</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Add a sphere in a specific point (useful for debugging)</p>
</div>
<h4 class="name" id="applyAngleStrategy"><span class="type-signature"></span>applyAngleStrategy<span class="signature">(state)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_strategies.js.html">utils/strategies.js</a>, <a href="utils_strategies.js.html#line38">line 38</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Apply the logic to measure angle between two segments</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>state</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"><p>The measurement state</p></td>
</tr>
</tbody>
</table>
<h4 class="name" id="applyLengthStrategy"><span class="type-signature"></span>applyLengthStrategy<span class="signature">(state)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_strategies.js.html">utils/strategies.js</a>, <a href="utils_strategies.js.html#line7">line 7</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Apply the logic to measure length between two points</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>state</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"><p>The measurement state</p></td>
</tr>
</tbody>
</table>
<h4 class="name" id="buildVtkVolume"><span class="type-signature"></span>buildVtkVolume<span class="signature">(header, data)</span><span class="type-signature"> → {vtkImageData}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line28">line 28</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Build vtk volume (vtkImageData)</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>header</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>data</code></td>
<td class="type">
<span class="param-type">TypedArray</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">vtkImageData</span>
</dd>
</dl>
<h4 class="name" id="createRGBStringFromRGBValues"><span class="type-signature"></span>createRGBStringFromRGBValues<span class="signature">(rgb)</span><span class="type-signature"> → {string}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line206">line 206</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>RGB string from RGB numeric values</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>rgb</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>In the form rgb(128, 128, 128)</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">string</span>
</dd>
</dl>
<h4 class="name" id="createSurfaceActor"><span class="type-signature"></span>createSurfaceActor<span class="signature">(buffer, fileType)</span><span class="type-signature"> → {Object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line594">line 594</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Create a surface actor from buffer data</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>buffer</code></td>
<td class="type">
<span class="param-type">ArrayBuffer</span>
</td>
<td class="description last"><p>The surface data buffer</p></td>
</tr>
<tr>
<td class="name"><code>fileType</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>Optional file type ('stl' or 'vtp')</p></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<ul>
<li>{actor: vtkActor, mapper: vtkMapper}</li>
</ul>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h4 class="name" id="createVolumeActor"><span class="type-signature"></span>createVolumeActor<span class="signature">(contentData)</span><span class="type-signature"> → {vtkVolume}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line294">line 294</a>
</li></ul></dd>
</dl>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>contentData</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>the volume actor</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">vtkVolume</span>
</dd>
</dl>
<h4 class="name" id="degrees2radians"><span class="type-signature"></span>degrees2radians<span class="signature">(degrees)</span><span class="type-signature"> → {Number}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line220">line 220</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Convert angles DEG to RAD</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>degrees</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Number</span>
</dd>
</dl>
<h4 class="name" id="fitToWindow"><span class="type-signature"></span>fitToWindow<span class="signature">(genericRenderWindow, dir)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line68">line 68</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Fit camera to window</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>genericRenderWindow</code></td>
<td class="type">
<span class="param-type">vtkGenericRenderWindow</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>dir</code></td>
<td class="type">
<span class="param-type">"x"</span>
|
<span class="param-type">"y"</span>
|
<span class="param-type">"z"</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h4 class="name" id="getAbsoluteRange"><span class="type-signature"></span>getAbsoluteRange<span class="signature">(actor, relativeRange)</span><span class="type-signature"> → {*}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line417">line 417</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Rescale relative range to abs range values (eg hist min-max)</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>actor</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>relativeRange</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>wwwl object</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="getCroppingPlanes"><span class="type-signature"></span>getCroppingPlanes<span class="signature">(imageData, ijkPlanes)</span><span class="type-signature"> → {Array}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line365">line 365</a>
</li></ul></dd>
</dl>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>imageData</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>ijkPlanes</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>array of vtkPlanes</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="getRelativeRange"><span class="type-signature"></span>getRelativeRange<span class="signature">(actor, absoluteRange)</span><span class="type-signature"> → {*}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line398">line 398</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Rescale abs range to relative range values (eg 0-1)</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>actor</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>absoluteRange</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>wwwl object</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">*</span>
</dd>
</dl>
<h4 class="name" id="getVideoCardInfo"><span class="type-signature"></span>getVideoCardInfo<span class="signature">()</span><span class="type-signature"> → {Object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line341">line 341</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Get info about webgl context (GPU)</p>
</div>
<h5>Returns:</h5>
<div class="param-desc">
<ul>
<li>{vendor, renderer} or {error}</li>
</ul>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h4 class="name" id="getVOI"><span class="type-signature"></span>getVOI<span class="signature">(volume)</span><span class="type-signature"> → {Object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line243">line 243</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Compute image center and width (wwwl)</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>volume</code></td>
<td class="type">
<span class="param-type">vtkImageData</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>{windowCenter, windowWidth}</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h4 class="name" id="getVolumeCenter"><span class="type-signature"></span>getVolumeCenter<span class="signature">(volumeMapper)</span><span class="type-signature"> → {Array}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line229">line 229</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Compute the volume center</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>volumeMapper</code></td>
<td class="type">
<span class="param-type">vtkVolumeMapper</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<p>In the form [x,y,z]</p>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Array</span>
</dd>
</dl>
<h4 class="name" id="setActorProperties"><span class="type-signature"></span>setActorProperties<span class="signature">(actor)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line447">line 447</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Set actor appearance properties</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>actor</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h4 class="name" id="setCamera"><span class="type-signature"></span>setCamera<span class="signature">(center)</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line433">line 433</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Set camera lookat point</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>center</code></td>
<td class="type">
<span class="param-type">Array</span>
</td>
<td class="description last"><p>As [x,y,z]</p></td>
</tr>
</tbody>
</table>
<h4 class="name" id="setupCropWidget"><span class="type-signature"></span>setupCropWidget<span class="signature">()</span><span class="type-signature"></span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line515">line 515</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Initialize a crop widget</p>
</div>
<h4 class="name" id="setupPickingPlane"><span class="type-signature"></span>setupPickingPlane<span class="signature">(camera, actor)</span><span class="type-signature"> → {Object}</span></h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils_utils.js.html">utils/utils.js</a>, <a href="utils_utils.js.html#line554">line 554</a>
</li></ul></dd>
</dl>
<div class="description usertext">
<p>Create a plane to perform picking</p>
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>camera</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>actor</code></td>
<td class="type">
<span class="param-type">*</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<h5>Returns:</h5>
<div class="param-desc">
<ul>
<li>{plane: vtkPlane, planeActor: vtkActor}</li>
</ul>
</div>
<dl class="param-type">
<dt>
Type
</dt>
<dd>
<span class="param-type">Object</span>
</dd>
</dl>
<h3 class="subsection-title">Type Definitions</h3>
<h4 class="name" id="State">State</h4>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="mprManager.js.html">mprManager.js</a>, <a href="mprManager.js.html#line17">line 17</a>
</li></ul></dd>
</dl>
<h5 class="subsection-title">Properties:</h5>
<table class="props">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>slicePlaneNormal</code></td>
<td class="type">
<span class="param-type">Array.<Number></span>
</td>
<td class="description last"><p>The slice plane normal as [x,y,z]</p></td>
</tr>
<tr>
<td class="name"><code>sliceViewUp</code></td>
<td class="type">
<span class="param-type">Array.<Number></span>
</td>
<td class="description last"><p>The up vector as [x,y,z]</p></td>
</tr>
<tr>
<td class="name"><code>slicePlaneXRotation</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>The x axis rotation in deg</p></td>
</tr>
<tr>
<td class="name"><code>slicePlaneYRotation</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>The y axis rotation in deg</p></td>
</tr>
<tr>
<td class="name"><code>viewRotation</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>The view rotation in deg</p></td>
</tr>
<tr>
<td class="name"><code>sliceThickness</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>The MIP slice thickness in px</p></td>
</tr>
<tr>
<td class="name"><code>blendMode</code></td>
<td class="type">
<span class="param-type">String</span>
</td>
<td class="description last"><p>The active blending mode ("MIP", "MinIP", "Average")</p></td>
</tr>
<tr>
<td class="name"><code>window</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last"><p>wwwl</p>
<h6>Properties</h6>
<table class="props">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>ww</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>Window width</p></td>
</tr>
<tr>
<td class="name"><code>wl</code></td>
<td class="type">
<span class="param-type">Number</span>
</td>
<td class="description last"><p>Window level</p></td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<div class="description usertext">
<p>Internal state of a single view</p>
</div>
<h5>Type:</h5>
<ul>
<li>
<span class="param-type">Object</span>
</li>
</ul>
</article>
</section>
</div>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.6</a> using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
</footer>
<script>prettyPrint();</script>
<script src="scripts/polyfill.js"></script>
<script src="scripts/linenumber.js"></script>
<script src="scripts/search.js" defer></script>
<script src="scripts/collapse.js" defer></script>
</body>
</html>