UNPKG

bot18

Version:

A high-frequency cryptocurrency trading bot by Zenbot creator @carlos8f

4,901 lines (1,250 loc) 71.2 kB
<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <title>JSDoc: Module: vec4</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">Module: vec4</h1> <section> <header> </header> <article> <div class="container-overview"> <div class="description">4 Dimensional Vector</div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line3">line 3</a> </li></ul></dd> </dl> </div> <h3 class="subsection-title">Methods</h3> <h4 class="name" id=".add"><span class="type-signature">(static) </span>add<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Adds two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line96">line 96</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".ceil"><span class="type-signature">(static) </span>ceil<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Math.ceil the components of a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to ceil</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line159">line 159</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".clone"><span class="type-signature">(static) </span>clone<span class="signature">(a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Creates a new vec4 initialized with values from an existing vector </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to clone</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line28">line 28</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> a new 4D vector </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".copy"><span class="type-signature">(static) </span>copy<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Copy the values from one vec4 to another </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the source vector</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line62">line 62</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".create"><span class="type-signature">(static) </span>create<span class="signature">()</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Creates a new, empty vec4 </div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line13">line 13</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> a new 4D vector </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".dist"><span class="type-signature">(static) </span>dist<span class="signature">()</span><span class="type-signature"></span></h4> <div class="description"> Alias for vec4.distance </div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line541">line 541</a> </li></ul></dd> </dl> <h4 class="name" id=".distance"><span class="type-signature">(static) </span>distance<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4> <div class="description"> Calculates the euclidian distance between two vec4's </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line269">line 269</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> distance between a and b </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Number</span> </dd> </dl> <h4 class="name" id=".div"><span class="type-signature">(static) </span>div<span class="signature">()</span><span class="type-signature"></span></h4> <div class="description"> Alias for vec4.divide </div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line535">line 535</a> </li></ul></dd> </dl> <h4 class="name" id=".divide"><span class="type-signature">(static) </span>divide<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Divides two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line144">line 144</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".dot"><span class="type-signature">(static) </span>dot<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Number}</span></h4> <div class="description"> Calculates the dot product of two vec4's </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line380">line 380</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> dot product of a and b </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Number</span> </dd> </dl> <h4 class="name" id=".equals"><span class="type-signature">(static) </span>equals<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Boolean}</span></h4> <div class="description"> Returns whether or not the vectors have approximately the same elements in the same position. </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">The first vector.</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">The second vector.</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line510">line 510</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> True if the vectors are equal, false otherwise. </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Boolean</span> </dd> </dl> <h4 class="name" id=".exactEquals"><span class="type-signature">(static) </span>exactEquals<span class="signature">(a, b)</span><span class="type-signature"> &rarr; {Boolean}</span></h4> <div class="description"> Returns whether or not the vectors have exactly the same elements in the same position (when compared with ===) </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">The first vector.</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">The second vector.</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line499">line 499</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> True if the vectors are equal, false otherwise. </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Boolean</span> </dd> </dl> <h4 class="name" id=".floor"><span class="type-signature">(static) </span>floor<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Math.floor the components of a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to floor</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line174">line 174</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".forEach"><span class="type-signature">(static) </span>forEach<span class="signature">(a, stride, offset, count, fn, arg<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {Array}</span></h4> <div class="description"> Perform some operation over an array of vec4s. </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">Array</span> </td> <td class="attributes"> </td> <td class="description last">the array of vectors to iterate over</td> </tr> <tr> <td class="name"><code>stride</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="attributes"> </td> <td class="description last">Number of elements between the start of each vec4. If 0 assumes tightly packed</td> </tr> <tr> <td class="name"><code>offset</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="attributes"> </td> <td class="description last">Number of elements to skip at the beginning of the array</td> </tr> <tr> <td class="name"><code>count</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="attributes"> </td> <td class="description last">Number of vec4s to iterate over. If 0 iterates over entire array</td> </tr> <tr> <td class="name"><code>fn</code></td> <td class="type"> <span class="param-type">function</span> </td> <td class="attributes"> </td> <td class="description last">Function to call for each vector in the array</td> </tr> <tr> <td class="name"><code>arg</code></td> <td class="type"> <span class="param-type">Object</span> </td> <td class="attributes"> &lt;optional><br> </td> <td class="description last">additional argument to pass to fn</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line573">line 573</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> a </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Array</span> </dd> </dl> <h4 class="name" id=".fromValues"><span class="type-signature">(static) </span>fromValues<span class="signature">(x, y, z, w)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Creates a new vec4 initialized with the given values </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>x</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="description last">X component</td> </tr> <tr> <td class="name"><code>y</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="description last">Y component</td> </tr> <tr> <td class="name"><code>z</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="description last">Z component</td> </tr> <tr> <td class="name"><code>w</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="description last">W component</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line46">line 46</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> a new 4D vector </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".inverse"><span class="type-signature">(static) </span>inverse<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Returns the inverse of the components of a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to invert</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line342">line 342</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".len"><span class="type-signature">(static) </span>len<span class="signature">()</span><span class="type-signature"></span></h4> <div class="description"> Alias for vec4.length </div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line553">line 553</a> </li></ul></dd> </dl> <h4 class="name" id=".length"><span class="type-signature">(static) </span>length<span class="signature">(a)</span><span class="type-signature"> &rarr; {Number}</span></h4> <div class="description"> Calculates the length of a vec4 </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>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to calculate length of</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line298">line 298</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> length of a </div> <dl> <dt> Type </dt> <dd> <span class="param-type">Number</span> </dd> </dl> <h4 class="name" id=".lerp"><span class="type-signature">(static) </span>lerp<span class="signature">(out, a, b, t)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Performs a linear interpolation between two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> <tr> <td class="name"><code>t</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="description last">interpolation amount, in the range [0-1], between the two inputs</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line393">line 393</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".max"><span class="type-signature">(static) </span>max<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Returns the maximum of two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line206">line 206</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".min"><span class="type-signature">(static) </span>min<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Returns the minimum of two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line190">line 190</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".mul"><span class="type-signature">(static) </span>mul<span class="signature">()</span><span class="type-signature"></span></h4> <div class="description"> Alias for vec4.multiply </div> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line529">line 529</a> </li></ul></dd> </dl> <h4 class="name" id=".multiply"><span class="type-signature">(static) </span>multiply<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Multiplies two vec4's </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the first operand</td> </tr> <tr> <td class="name"><code>b</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the second operand</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line128">line 128</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".negate"><span class="type-signature">(static) </span>negate<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Negates the components of a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to negate</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line327">line 327</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".normalize"><span class="type-signature">(static) </span>normalize<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Normalize a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to normalize</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line357">line 357</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".random"><span class="type-signature">(static) </span>random<span class="signature">(out, scale<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Generates a random vector with the given scale </div> <h5>Parameters:</h5> <table class="params"> <thead> <tr> <th>Name</th> <th>Type</th> <th>Attributes</th> <th class="last">Description</th> </tr> </thead> <tbody> <tr> <td class="name"><code>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="attributes"> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>scale</code></td> <td class="type"> <span class="param-type">Number</span> </td> <td class="attributes"> &lt;optional><br> </td> <td class="description last">Length of the resulting vector. If ommitted, a unit vector will be returned</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line412">line 412</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".round"><span class="type-signature">(static) </span>round<span class="signature">(out, a)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Math.round the components of a vec4 </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>out</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">the receiving vector</td> </tr> <tr> <td class="name"><code>a</code></td> <td class="type"> <span class="param-type">vec4</span> </td> <td class="description last">vector to round</td> </tr> </tbody> </table> <dl class="details"> <dt class="tag-source">Source:</dt> <dd class="tag-source"><ul class="dummy"><li> <a href="vec4.js.html">vec4.js</a>, <a href="vec4.js.html#line221">line 221</a> </li></ul></dd> </dl> <h5>Returns:</h5> <div class="param-desc"> out </div> <dl> <dt> Type </dt> <dd> <span class="param-type">vec4</span> </dd> </dl> <h4 class="name" id=".scale"><span class="type-signature">(static) </span>scale<span class="signature">(out, a, b)</span><span class="type-signature"> &rarr; {vec4}</span></h4> <div class="description"> Scales a vec4 by a scalar number </div> <