blob: 3c82887bb88520a76643703454eb42add1d12f4a [file] [log] [blame]
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Library VectorMath / Class _ScalerHelpers</title>
<link rel="stylesheet" type="text/css"
href="../styles.css" />
<link href="http://fonts.googleapis.com/css?family=Open+Sans:400,600,700,800" rel="stylesheet" type="text/css">
<link rel="shortcut icon" href="../favicon.ico" />
<script src="../client-static.js"></script>
</head>
<body data-library="VectorMath" data-type="_ScalerHelpers">
<div class="page">
<div class="header">
<a href="../index.html"><div class="logo"></div></a>
<a href="../index.html">Dart Documentation</a>
&rsaquo; <a href="../VectorMath.html">VectorMath</a> &rsaquo; <a href="../VectorMath/_ScalerHelpers.html">_ScalerHelpers</a></div>
<div class="nav">
<h2><div class="icon-library"></div><a href="../dart_core.html">dart:core</a></h2><h2><div class="icon-library"></div><a href="../dart_coreimpl.html">dart:coreimpl</a></h2><h2><div class="icon-library"></div><a href="../VectorMath.html">VectorMath</a></h2><ul class="icon">
<li><a href="../VectorMath/vec2.html"><div class="icon-class"></div>vec2</a></li>
<li><a href="../VectorMath/vec3.html"><div class="icon-class"></div>vec3</a></li>
<li><a href="../VectorMath/vec4.html"><div class="icon-class"></div>vec4</a></li>
<li><a href="../VectorMath/mat2x2.html"><div class="icon-class"></div>mat2x2</a></li>
<li><a href="../VectorMath/mat2x3.html"><div class="icon-class"></div>mat2x3</a></li>
<li><a href="../VectorMath/mat2x4.html"><div class="icon-class"></div>mat2x4</a></li>
<li><a href="../VectorMath/mat3x2.html"><div class="icon-class"></div>mat3x2</a></li>
<li><a href="../VectorMath/mat3x3.html"><div class="icon-class"></div>mat3x3</a></li>
<li><a href="../VectorMath/mat3x4.html"><div class="icon-class"></div>mat3x4</a></li>
<li><a href="../VectorMath/mat4x2.html"><div class="icon-class"></div>mat4x2</a></li>
<li><a href="../VectorMath/mat4x3.html"><div class="icon-class"></div>mat4x3</a></li>
<li><a href="../VectorMath/mat4x4.html"><div class="icon-class"></div>mat4x4</a></li>
<li><a href="../VectorMath/quat.html"><div class="icon-class"></div>quat</a></li>
</ul>
</div>
<div class="content">
<h2>Class
<strong>_ScalerHelpers</strong></h2>
<div class="doc">
</div>
<h3>Static Methods</h3>
<div class="method"><h4 id="degrees">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>degrees</strong>(<a href="../dart_core/num.html">num</a> r) <a class="anchor-link" href="#degrees"
title="Permalink to _ScalerHelpers.degrees">#</a></h4>
<div class="doc">
<pre class="source">
static num degrees(num r) {
return r * 180.0/Math.PI;
}
</pre>
</div>
</div>
<div class="method"><h4 id="radians">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>radians</strong>(<a href="../dart_core/num.html">num</a> d) <a class="anchor-link" href="#radians"
title="Permalink to _ScalerHelpers.radians">#</a></h4>
<div class="doc">
<pre class="source">
static num radians(num d) {
return d * Math.PI/180.0;
}
</pre>
</div>
</div>
<div class="method"><h4 id="clamp">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>clamp</strong>(<a href="../dart_core/num.html">num</a> x, <a href="../dart_core/num.html">num</a> _min, <a href="../dart_core/num.html">num</a> _max) <a class="anchor-link" href="#clamp"
title="Permalink to _ScalerHelpers.clamp">#</a></h4>
<div class="doc">
<pre class="source">
static num clamp(num x, num _min, num _max) {
return x &lt; _min ? _min : x &gt; _max ? _max : x;
}
</pre>
</div>
</div>
<div class="method"><h4 id="mix">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>mix</strong>(<a href="../dart_core/num.html">num</a> x, <a href="../dart_core/num.html">num</a> y, <a href="../dart_core/num.html">num</a> t) <a class="anchor-link" href="#mix"
title="Permalink to _ScalerHelpers.mix">#</a></h4>
<div class="doc">
<pre class="source">
static num mix(num x, num y, num t) {
return x * (1.0-t) + y * (t);
}
</pre>
</div>
</div>
<div class="method"><h4 id="step">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>step</strong>(<a href="../dart_core/num.html">num</a> edge, <a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#step"
title="Permalink to _ScalerHelpers.step">#</a></h4>
<div class="doc">
<pre class="source">
static num step(num edge, num x) {
if (x &lt; edge) {
return 0.0;
}
return 1.0;
}
</pre>
</div>
</div>
<div class="method"><h4 id="smoothstep">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>smoothstep</strong>(<a href="../dart_core/num.html">num</a> edge0, <a href="../dart_core/num.html">num</a> edge1, <a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#smoothstep"
title="Permalink to _ScalerHelpers.smoothstep">#</a></h4>
<div class="doc">
<pre class="source">
static num smoothstep(num edge0, num edge1, num x) {
num t = 0.0;
t = clamp((x - edge0)/(edge1-edge0), 0.0, 1.0);
return (t*t)*(3.0-2.0*t);
}
</pre>
</div>
</div>
<div class="method"><h4 id="inversesqrt">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>inversesqrt</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#inversesqrt"
title="Permalink to _ScalerHelpers.inversesqrt">#</a></h4>
<div class="doc">
<pre class="source">
static num inversesqrt(num x) {
return 1.0 / Math.sqrt(x);
}
</pre>
</div>
</div>
<div class="method"><h4 id="abs">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>abs</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#abs"
title="Permalink to _ScalerHelpers.abs">#</a></h4>
<div class="doc">
<pre class="source">
static num abs(num x) {
return x.abs();
}
</pre>
</div>
</div>
<div class="method"><h4 id="ceil">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>ceil</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#ceil"
title="Permalink to _ScalerHelpers.ceil">#</a></h4>
<div class="doc">
<pre class="source">
static num ceil(num x) {
return x.ceil();
}
</pre>
</div>
</div>
<div class="method"><h4 id="floor">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>floor</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#floor"
title="Permalink to _ScalerHelpers.floor">#</a></h4>
<div class="doc">
<pre class="source">
static num floor(num x) {
return x.floor();
}
</pre>
</div>
</div>
<div class="method"><h4 id="isnan">
<span class="show-code">Code</span>
<a href="../dart_core/bool.html">bool</a> <strong>isnan</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#isnan"
title="Permalink to _ScalerHelpers.isnan">#</a></h4>
<div class="doc">
<pre class="source">
static bool isnan(num x) {
return x.isNaN();
}
</pre>
</div>
</div>
<div class="method"><h4 id="isInfinite">
<span class="show-code">Code</span>
<a href="../dart_core/bool.html">bool</a> <strong>isInfinite</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#isInfinite"
title="Permalink to _ScalerHelpers.isInfinite">#</a></h4>
<div class="doc">
<pre class="source">
static bool isInfinite(num x) {
return x.isInfinite();
}
</pre>
</div>
</div>
<div class="method"><h4 id="truncate">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>truncate</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#truncate"
title="Permalink to _ScalerHelpers.truncate">#</a></h4>
<div class="doc">
<pre class="source">
static num truncate(num x) {
return x.truncate();
}
</pre>
</div>
</div>
<div class="method"><h4 id="sign">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>sign</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#sign"
title="Permalink to _ScalerHelpers.sign">#</a></h4>
<div class="doc">
<pre class="source">
static num sign(num x) {
if (x &gt; 0) {
return 1.0;
} else if (x == 0.0) {
return 0.0;
} else {
return -1.0;
}
}
</pre>
</div>
</div>
<div class="method"><h4 id="fract">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>fract</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#fract"
title="Permalink to _ScalerHelpers.fract">#</a></h4>
<div class="doc">
<pre class="source">
static num fract(num x) {
return x - x.floor();
}
</pre>
</div>
</div>
<div class="method"><h4 id="mod">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>mod</strong>(<a href="../dart_core/num.html">num</a> x, <a href="../dart_core/num.html">num</a> y) <a class="anchor-link" href="#mod"
title="Permalink to _ScalerHelpers.mod">#</a></h4>
<div class="doc">
<pre class="source">
static num mod(num x, num y) {
return x % y;
}
</pre>
</div>
</div>
<div class="method"><h4 id="round">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>round</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#round"
title="Permalink to _ScalerHelpers.round">#</a></h4>
<div class="doc">
<pre class="source">
static num round(num x) {
return x.round();
}
</pre>
</div>
</div>
<div class="method"><h4 id="roundEven">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>roundEven</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#roundEven"
title="Permalink to _ScalerHelpers.roundEven">#</a></h4>
<div class="doc">
<pre class="source">
static num roundEven(num x) {
if ( (floor(x)%2==0) &amp;&amp; (fract(x)==0.5) )
return _ScalerHelpers.round(x)-1;
else
return x.round();
}
</pre>
</div>
</div>
<div class="method"><h4 id="exp2">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>exp2</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#exp2"
title="Permalink to _ScalerHelpers.exp2">#</a></h4>
<div class="doc">
<pre class="source">
static num exp2(num x) {
return x;
}
</pre>
</div>
</div>
<div class="method"><h4 id="log2">
<span class="show-code">Code</span>
<a href="../dart_core/num.html">num</a> <strong>log2</strong>(<a href="../dart_core/num.html">num</a> x) <a class="anchor-link" href="#log2"
title="Permalink to _ScalerHelpers.log2">#</a></h4>
<div class="doc">
<pre class="source">
static num log2(num x) {
}
</pre>
</div>
</div>
</div>
<div class="clear"></div>
</div>
<div class="footer"></div>
</body></html>