dicom-microscopy-viewer
Version:
Interactive web-based viewer for DICOM Microscopy Images
3,643 lines (1,037 loc) • 44.9 kB
HTML
<html lang="en">
<head>
<meta charset="utf-8">
<title>JSDoc: Namespace: utils</title>
<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-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/jsdoc-default.css">
</head>
<body>
<div id="main">
<h1 class="page-title">Namespace: utils</h1>
<section>
<header>
<h2>utils</h2>
</header>
<article>
<div class="container-overview">
<div class="description">Namespace for various utilities.</div>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="dicom-microscopy-viewer.js.html">dicom-microscopy-viewer.js</a>, <a href="dicom-microscopy-viewer.js.html#line168">line 168</a>
</li></ul></dd>
</dl>
</div>
<h3 class="subsection-title">Methods</h3>
<h4 class="name" id=".applyInverseTransform"><span class="type-signature">(static) </span>applyInverseTransform<span class="signature">(options)</span><span class="type-signature"> → {Array.<number>}</span></h4>
<div class="description">
Apply an affine transformation to a reference coordinate in the slide
coordinate system to map it into the total pixel matrix.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>coordinate</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">(x, y) reference coordinate</td>
</tr>
<tr>
<td class="name"><code>affine</code></td>
<td class="type">
<span class="param-type">Array.<Array.<number>></span>
</td>
<td class="description last">3x3 affine transformation matrix</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line308">line 308</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
(column, row) image coordinate
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<number></span>
</dd>
</dl>
<h4 class="name" id=".applyTransform"><span class="type-signature">(static) </span>applyTransform<span class="signature">(options)</span><span class="type-signature"> → {Array.<number>}</span></h4>
<div class="description">
Apply an affine transformation to an image coordinate in the total pixel
matrix to map it into the slide coordinate system.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>coordinate</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">(column, row) image coordinate</td>
</tr>
<tr>
<td class="name"><code>affine</code></td>
<td class="type">
<span class="param-type">Array.<Array.<number>></span>
</td>
<td class="description last">3x3 affine transformation matrix</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line201">line 201</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
(x, y) reference coordinate
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<number></span>
</dd>
</dl>
<h4 class="name" id=".are1DArraysAlmostEqual"><span class="type-signature">(static) </span>are1DArraysAlmostEqual<span class="signature">(array, array, eps)</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Check if 1D arrays are equal.
</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>array</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">a</td>
</tr>
<tr>
<td class="name"><code>array</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">b</td>
</tr>
<tr>
<td class="name"><code>eps</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line448">line 448</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
yes/no answer
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id=".are2DArraysAlmostEqual"><span class="type-signature">(static) </span>are2DArraysAlmostEqual<span class="signature">(array, array, eps)</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Check if 2D arrays are equal.
</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>array</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">a</td>
</tr>
<tr>
<td class="name"><code>array</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">b</td>
</tr>
<tr>
<td class="name"><code>eps</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line421">line 421</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
yes/no answer
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id=".areCodedConceptsEqual"><span class="type-signature">(static) </span>areCodedConceptsEqual<span class="signature">(codedConcept1, codedConcept2)</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Check whether coded concepts are equal.
</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>codedConcept1</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>codedConcept2</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line545">line 545</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
yes/no answer
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id=".areNumbersAlmostEqual"><span class="type-signature">(static) </span>areNumbersAlmostEqual<span class="signature">(a, b, eps)</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Check if two numbers are equal.
</div>
<h5>Parameters:</h5>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>a</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="default">
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>b</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="default">
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>eps</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="default">
0.000001
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line471">line 471</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
yes/no answer
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id=".buildInverseTransform"><span class="type-signature">(static) </span>buildInverseTransform<span class="signature">()</span><span class="type-signature"> → {Array.<Array.<number>>}</span></h4>
<div class="description">
Build an affine transformation matrix to map coordinates in the slide
coordinate system into the Total Pixel Matrix.
</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>options.offset</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">X and Y offset of the image in the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>options.orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>options.spacing</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Spacing between pixel rows and columns of the Total Pixel Matrix</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line249">line 249</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
3x3 affine transformation matrix
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<Array.<number>></span>
</dd>
</dl>
<h4 class="name" id=".buildTransform"><span class="type-signature">(static) </span>buildTransform<span class="signature">(options)</span><span class="type-signature"> → {Array.<Array.<number>>}</span></h4>
<div class="description">
Build an affine transformation matrix to map coordinates in the Total
Pixel Matrix into the slide coordinate system.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>offset</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">X and Y offset of the image in the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>spacing</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Spacing between pixel rows and columns of the Total Pixel Matrix</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line142">line 142</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
3x3 affine transformation matrix
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<Array.<number>></span>
</dd>
</dl>
<h4 class="name" id=".computeRotation"><span class="type-signature">(static) </span>computeRotation<span class="signature">(options)</span><span class="type-signature"> → {number}</span></h4>
<div class="description">
Compute the rotation of the image with respect to the frame of reference.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>inDegrees</code></td>
<td class="type">
<span class="param-type">boolean</span>
</td>
<td class="description last">Whether angle should be returned in degrees instead of radians</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line115">line 115</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
Angle
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">number</span>
</dd>
</dl>
<h4 class="name" id=".createRotationMatrix"><span class="type-signature">(static) </span>createRotationMatrix<span class="signature">(options)</span><span class="type-signature"> → {Array.<Array.<number>>}</span></h4>
<div class="description">
Create a rotation matrix.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line47">line 47</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
2x2 rotation matrix
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<Array.<number>></span>
</dd>
</dl>
<h4 class="name" id=".createWindow"><span class="type-signature">(static) </span>createWindow<span class="signature">(lowerBound, upperBound)</span><span class="type-signature"> → {Array.<number>}</span></h4>
<div class="description">
Create window.
</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>lowerBound</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Lower bound of the window</td>
</tr>
<tr>
<td class="name"><code>upperBound</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Upper bound of the window</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line98">line 98</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
Window center and width
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<number></span>
</dd>
</dl>
<h4 class="name" id=".doContentItemsMatch"><span class="type-signature">(static) </span>doContentItemsMatch<span class="signature">(contentItem1, contentItem2)</span><span class="type-signature"> → {boolean}</span></h4>
<div class="description">
Check wether two content items match.
</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>contentItem1</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
<tr>
<td class="name"><code>contentItem2</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line574">line 574</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
yes/no answer
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">boolean</span>
</dd>
</dl>
<h4 class="name" id=".getContentItemNameCodedConcept"><span class="type-signature">(static) </span>getContentItemNameCodedConcept<span class="signature">(contentItem)</span><span class="type-signature"> → {object}</span></h4>
<div class="description">
Get name coded concept from content item.
</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>contentItem</code></td>
<td class="type">
<span class="param-type">object</span>
</td>
<td class="description last"></td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line532">line 532</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
The concept name coded concept
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">object</span>
</dd>
</dl>
<h4 class="name" id=".mapPixelCoordToSlideCoord"><span class="type-signature">(static) </span>mapPixelCoordToSlideCoord<span class="signature">(options)</span><span class="type-signature"> → {Array.<number>}</span></h4>
<div class="description">
Map 2D (column, row) image coordinates in the Total Pixel Matrix
to 3D (x, y, z) slide coordinates in the Frame of Reference.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>offset</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">X and Y offset in the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>spacing</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Spacing between pixels along the Column and Row direction of the Total Pixel Matrix</td>
</tr>
<tr>
<td class="name"><code>point</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">(colum, row) image coordinates</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line358">line 358</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
(x, y, z) slide coordinates
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<number></span>
</dd>
</dl>
<h4 class="name" id=".mapSlideCoordToPixelCoord"><span class="type-signature">(static) </span>mapSlideCoordToPixelCoord<span class="signature">(options)</span><span class="type-signature"> → {Array.<number>}</span></h4>
<div class="description">
Map 3D (x, y, z) slide coordinates in the Frame of Reference to
2D (column, row) image coordinates in the Total Pixel Matrix.
</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>options</code></td>
<td class="type">
<span class="param-type">Object</span>
</td>
<td class="description last">Options
<h6>Properties</h6>
<table class="params">
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th class="last">Description</th>
</tr>
</thead>
<tbody>
<tr>
<td class="name"><code>offset</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">X and Y offset in the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>orientation</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Direction cosines along the row and column direction of the Total Pixel Matrix for each of the three axis of the slide coordinate system</td>
</tr>
<tr>
<td class="name"><code>spacing</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">Spacing between pixels along the Column and Row direction of the Total Pixel Matrix</td>
</tr>
<tr>
<td class="name"><code>point</code></td>
<td class="type">
<span class="param-type">Array.<number></span>
</td>
<td class="description last">(x, y, z) slide coordinates</td>
</tr>
</tbody>
</table>
</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line391">line 391</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
(row, column) image coordinates
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">Array.<number></span>
</dd>
</dl>
<h4 class="name" id=".rescale"><span class="type-signature">(static) </span>rescale<span class="signature">(value, minInput, maxInput, minOutput, maxOutput)</span><span class="type-signature"> → {number}</span></h4>
<div class="description">
Rescale intensity from [minInput, maxInput] to [minOutput, maxOutput].
</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>value</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Input value that should be rescaled</td>
</tr>
<tr>
<td class="name"><code>minInput</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Lower bound of the full input value range</td>
</tr>
<tr>
<td class="name"><code>maxInput</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Upper bound of the full input value range</td>
</tr>
<tr>
<td class="name"><code>minOutput</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Lower bound of the full output value range</td>
</tr>
<tr>
<td class="name"><code>maxOutput</code></td>
<td class="type">
<span class="param-type">number</span>
</td>
<td class="description last">Upper bound of the full output value range</td>
</tr>
</tbody>
</table>
<dl class="details">
<dt class="tag-source">Source:</dt>
<dd class="tag-source"><ul class="dummy"><li>
<a href="utils.js.html">utils.js</a>, <a href="utils.js.html#line74">line 74</a>
</li></ul></dd>
</dl>
<h5>Returns:</h5>
<div class="param-desc">
Rescaled value
</div>
<dl>
<dt>
Type
</dt>
<dd>
<span class="param-type">number</span>
</dd>
</dl>
</article>
</section>
</div>
<nav>
<h2><a href="index.html">Home</a></h2><h3>Namespaces</h3><ul><li><a href="annotation.html">annotation</a></li><li><a href="api.html">api</a></li><li><a href="color.html">color</a></li><li><a href="events.html">events</a></li><li><a href="mapping.html">mapping</a></li><li><a href="metadata.html">metadata</a></li><li><a href="opticalPath.html">opticalPath</a></li><li><a href="roi.html">roi</a></li><li><a href="scoord3d.html">scoord3d</a></li><li><a href="segment.html">segment</a></li><li><a href="utils.html">utils</a></li><li><a href="viewer.html">viewer</a></li></ul><h3>Classes</h3><ul><li><a href="annotation.AnnotationGroup.html">AnnotationGroup</a></li><li><a href="color.PaletteColorLookupTable.html">PaletteColorLookupTable</a></li><li><a href="mapping.ParameterMapping.html">ParameterMapping</a></li><li><a href="mapping.Transformation.html">Transformation</a></li><li><a href="metadata.Comprehensive3DSR.html">Comprehensive3DSR</a></li><li><a href="metadata.MicroscopyBulkSimpleAnnotations.html">MicroscopyBulkSimpleAnnotations</a></li><li><a href="metadata.ParametricMap.html">ParametricMap</a></li><li><a href="metadata.Segmentation.html">Segmentation</a></li><li><a href="metadata.SOPClass.html">SOPClass</a></li><li><a href="metadata.VLWholeSlideMicroscopyImage.html">VLWholeSlideMicroscopyImage</a></li><li><a href="module.exports_module.exports.html">exports</a></li><li><a href="opticalPath.OpticalPath.html">OpticalPath</a></li><li><a href="roi.ROI.html">ROI</a></li><li><a href="scoord3d.Ellipse.html">Ellipse</a></li><li><a href="scoord3d.Ellipsoid.html">Ellipsoid</a></li><li><a href="scoord3d.Multipoint.html">Multipoint</a></li><li><a href="scoord3d.Point.html">Point</a></li><li><a href="scoord3d.Polygon.html">Polygon</a></li><li><a href="scoord3d.Polyline.html">Polyline</a></li><li><a href="scoord3d.Scoord3D.html">Scoord3D</a></li><li><a href="segment.Segment.html">Segment</a></li><li><a href="viewer.LabelImageViewer.html">LabelImageViewer</a></li><li><a href="viewer.OverviewImageViewer.html">OverviewImageViewer</a></li><li><a href="viewer.VolumeImageViewer.html">VolumeImageViewer</a></li></ul><h3>Global</h3><ul><li><a href="global.html#addTask">addTask</a></li><li><a href="global.html#cancelTask">cancelTask</a></li><li><a href="global.html#decode">decode</a></li><li><a href="global.html#getStatistics">getStatistics</a></li><li><a href="global.html#handleMessageFromWorker">handleMessageFromWorker</a></li><li><a href="global.html#initialize">initialize</a></li><li><a href="global.html#loadWebWorkerTask">loadWebWorkerTask</a></li><li><a href="global.html#setTaskPriority">setTaskPriority</a></li><li><a href="global.html#spawnWebWorker">spawnWebWorker</a></li><li><a href="global.html#startTaskOnWebWorker">startTaskOnWebWorker</a></li><li><a href="global.html#terminateAllWebWorkers">terminateAllWebWorkers</a></li><li><a href="global.html#transform">transform</a></li></ul>
</nav>
<br class="clear">
<footer>
Documentation generated by <a href="https://github.com/jsdoc/jsdoc">JSDoc 3.6.10</a> on Thu Sep 29 2022 16:54:54 GMT-0400 (Eastern Daylight Time)
</footer>
<script> prettyPrint(); </script>
<script src="scripts/linenumber.js"> </script>
</body>
</html>