UNPKG

p2s

Version:

A JavaScript 2D physics engine.

4,663 lines 144 kB
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <title>Narrowphase - p2.js</title>
    <link rel="stylesheet" href="http://yui.yahooapis.com/3.9.1/build/cssgrids/cssgrids-min.css">
    <link rel="stylesheet" href="../assets/vendor/prettify/prettify-min.css">
    <link rel="stylesheet" href="../assets/css/main.css" id="site_styles">
    <link rel="icon" href="../assets/favicon.ico">
    <script src="http://yui.yahooapis.com/combo?3.9.1/build/yui/yui-min.js"></script>
</head>
<body class="yui3-skin-sam">

<div id="doc">
    <div id="hd" class="yui3-g header">
        <div class="yui3-u-3-4">
                <h1><img src="../assets/css/logo.png" title="p2.js" width="117" height="52"></h1>
        </div>
        <div class="yui3-u-1-4 version">
            <em>API Docs for: 0.7.1</em>
        </div>
    </div>
    <div id="bd" class="yui3-g">

        <div class="yui3-u-1-4">
            <div id="docs-sidebar" class="sidebar apidocs">
                <div id="api-list">
                    <h2 class="off-left">APIs</h2>
                    <div id="api-tabview" class="tabview">
                        <ul class="tabs">
                            <li><a href="#api-classes">Classes</a></li>
                            <li><a href="#api-modules">Modules</a></li>
                        </ul>
                
                        <div id="api-tabview-filter">
                            <input type="search" id="api-filter" placeholder="Type to filter APIs">
                        </div>
                
                        <div id="api-tabview-panel">
                            <ul id="api-classes" class="apis classes">
                                <li><a href="../classes/AABB.html">AABB</a></li>
                                <li><a href="../classes/AngleLockEquation.html">AngleLockEquation</a></li>
                                <li><a href="../classes/Body.html">Body</a></li>
                                <li><a href="../classes/Box.html">Box</a></li>
                                <li><a href="../classes/Broadphase.html">Broadphase</a></li>
                                <li><a href="../classes/Capsule.html">Capsule</a></li>
                                <li><a href="../classes/Circle.html">Circle</a></li>
                                <li><a href="../classes/Constraint.html">Constraint</a></li>
                                <li><a href="../classes/ContactEquation.html">ContactEquation</a></li>
                                <li><a href="../classes/ContactMaterial.html">ContactMaterial</a></li>
                                <li><a href="../classes/Convex.html">Convex</a></li>
                                <li><a href="../classes/DistanceConstraint.html">DistanceConstraint</a></li>
                                <li><a href="../classes/Equation.html">Equation</a></li>
                                <li><a href="../classes/EventEmitter.html">EventEmitter</a></li>
                                <li><a href="../classes/FrictionEquation.html">FrictionEquation</a></li>
                                <li><a href="../classes/GearConstraint.html">GearConstraint</a></li>
                                <li><a href="../classes/GSSolver.html">GSSolver</a></li>
                                <li><a href="../classes/Heightfield.html">Heightfield</a></li>
                                <li><a href="../classes/Island.html">Island</a></li>
                                <li><a href="../classes/IslandManager.html">IslandManager</a></li>
                                <li><a href="../classes/IslandNode.html">IslandNode</a></li>
                                <li><a href="../classes/Line.html">Line</a></li>
                                <li><a href="../classes/LinearSpring.html">LinearSpring</a></li>
                                <li><a href="../classes/LockConstraint.html">LockConstraint</a></li>
                                <li><a href="../classes/Material.html">Material</a></li>
                                <li><a href="../classes/NaiveBroadphase.html">NaiveBroadphase</a></li>
                                <li><a href="../classes/Narrowphase.html">Narrowphase</a></li>
                                <li><a href="../classes/Object pooling utility..html">Object pooling utility.</a></li>
                                <li><a href="../classes/OverlapKeeper.html">OverlapKeeper</a></li>
                                <li><a href="../classes/OverlapKeeperRecord.html">OverlapKeeperRecord</a></li>
                                <li><a href="../classes/Particle.html">Particle</a></li>
                                <li><a href="../classes/Plane.html">Plane</a></li>
                                <li><a href="../classes/PrismaticConstraint.html">PrismaticConstraint</a></li>
                                <li><a href="../classes/Ray.html">Ray</a></li>
                                <li><a href="../classes/RaycastResult.html">RaycastResult</a></li>
                                <li><a href="../classes/RevoluteConstraint.html">RevoluteConstraint</a></li>
                                <li><a href="../classes/RotationalLockEquation.html">RotationalLockEquation</a></li>
                                <li><a href="../classes/.html"></a></li>
                                <li><a href="../classes/RotationalSpring.html">RotationalSpring</a></li>
                                <li><a href="../classes/RotationalVelocityEquation.html">RotationalVelocityEquation</a></li>
                                <li><a href="../classes/SAPBroadphase.html">SAPBroadphase</a></li>
                                <li><a href="../classes/Shape.html">Shape</a></li>
                                <li><a href="../classes/Solver.html">Solver</a></li>
                                <li><a href="../classes/Spring.html">Spring</a></li>
                                <li><a href="../classes/TopDownVehicle.html">TopDownVehicle</a></li>
                                <li><a href="../classes/TupleDictionary.html">TupleDictionary</a></li>
                                <li><a href="../classes/Utils.html">Utils</a></li>
                                <li><a href="../classes/vec2.html">vec2</a></li>
                                <li><a href="../classes/WheelConstraint.html">WheelConstraint</a></li>
                                <li><a href="../classes/World.html">World</a></li>
                            </ul>
                
                            <ul id="api-modules" class="apis modules">
                            </ul>
                        </div>
                    </div>
                </div>
            </div>
        </div>
        <div class="yui3-u-3-4">
                <div id="api-options">
                    Show:
                    <label for="api-show-inherited">
                        <input type="checkbox" id="api-show-inherited" checked>
                        Inherited
                    </label>
            
                    <label for="api-show-protected">
                        <input type="checkbox" id="api-show-protected">
                        Protected
                    </label>
            
                    <label for="api-show-private">
                        <input type="checkbox" id="api-show-private">
                        Private
                    </label>
                    <label for="api-show-deprecated">
                        <input type="checkbox" id="api-show-deprecated">
                        Deprecated
                    </label>
            
                </div>
            
            <div class="apidocs">
                <div id="docs-main">
                    <div class="content">
<h1>Narrowphase Class</h1>
<div class="box meta">


        <div class="foundat">
            Defined in: <a href="../files/src_collision_Narrowphase.js.html#l43"><code>src&#x2F;collision&#x2F;Narrowphase.js:43</code></a>
        </div>


</div>


<div class="box intro">
    <p>Narrowphase. Creates contacts and friction given shapes and transforms.</p>

</div>

    <div class="constructor">
        <h2>Constructor</h2>
        <div id="method_Narrowphase" class="method item">
            <h3 class="name"><code>Narrowphase</code></h3>
        
                <span class="paren">()</span>
        
        
        
        
        
        
        
        
            <div class="meta">
                        <p>
                        Defined in
                <a href="../files/src_collision_Narrowphase.js.html#l43"><code>src&#x2F;collision&#x2F;Narrowphase.js:43</code></a>
                </p>
        
        
        
            </div>
        
            <div class="description">
                
            </div>
        
        
        
        
        </div>
    </div>

<div id="classdocs" class="tabview">
    <ul class="api-class-tabs">
        <li class="api-class-tab index"><a href="#index">Index</a></li>

            <li class="api-class-tab methods"><a href="#methods">Methods</a></li>
            <li class="api-class-tab properties"><a href="#properties">Properties</a></li>
    </ul>

    <div>
        <div id="index" class="api-class-tabpanel index">
            <h2 class="off-left">Item Index</h2>

                <div class="index-section methods">
                    <h3>Methods</h3>

                    <ul class="index-list methods">
                            <li class="index-item method">
                                <a href="#method_bodiesOverlap">bodiesOverlap</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_capsuleCapsule">capsuleCapsule</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleCapsule">circleCapsule</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleCircle">circleCircle</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleConvex">circleConvex</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleHeightfield">circleHeightfield</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleHeightfield">circleHeightfield</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleLine">circleLine</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circleParticle">circleParticle</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_circlePlane">circlePlane</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_collidedLastStep">collidedLastStep</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_convexCapsule">convexCapsule</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_convexConvex">convexConvex</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_convexLine">convexLine</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_createContactEquation">createContactEquation</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_createFrictionEquation">createFrictionEquation</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_createFrictionFromContact">createFrictionFromContact</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_findSeparatingAxis">findSeparatingAxis</a>

                                    <span class="flag static">static</span>
                            </li>
                            <li class="index-item method">
                                <a href="#method_getClosestEdge">getClosestEdge</a>

                                    <span class="flag static">static</span>
                            </li>
                            <li class="index-item method">
                                <a href="#method_lineBox">lineBox</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_lineCapsule">lineCapsule</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_lineLine">lineLine</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_particleConvex">particleConvex</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_particlePlane">particlePlane</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_planeCapsule">planeCapsule</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_planeConvex">planeConvex</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_planeLine">planeLine</a>

                            </li>
                            <li class="index-item method">
                                <a href="#method_projectConvexOntoAxis">projectConvexOntoAxis</a>

                                    <span class="flag static">static</span>
                            </li>
                            <li class="index-item method">
                                <a href="#method_reset">reset</a>

                            </li>
                    </ul>
                </div>

                <div class="index-section properties">
                    <h3>Properties</h3>

                    <ul class="index-list properties">
                            <li class="index-item property private">
                                <a href="#property_collidingBodiesLastStep">collidingBodiesLastStep</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_contactEquationPool">contactEquationPool</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_contactEquations">contactEquations</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_contactSkinSize">contactSkinSize</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_enabledEquations">enabledEquations</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_enableFriction">enableFriction</a>

                            </li>
                            <li class="index-item property deprecated">
                                <a href="#property_enableFrictionReduction">enableFrictionReduction</a>

                                    <span class="flag deprecated">deprecated</span>
                            </li>
                            <li class="index-item property">
                                <a href="#property_frictionCoefficient">frictionCoefficient</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_frictionEquationPool">frictionEquationPool</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_frictionEquations">frictionEquations</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_frictionRelaxation">frictionRelaxation</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_frictionStiffness">frictionStiffness</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_restitution">restitution</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_slipForce">slipForce</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_stiffness">stiffness</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_stiffness">stiffness</a>

                            </li>
                            <li class="index-item property">
                                <a href="#property_surfaceVelocity">surfaceVelocity</a>

                            </li>
                    </ul>
                </div>


        </div>

            <div id="methods" class="api-class-tabpanel">
                <h2 class="off-left">Methods</h2>

<div id="method_bodiesOverlap" class="method item">
    <h3 class="name"><code>bodiesOverlap</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Boolean</span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l176"><code>src&#x2F;collision&#x2F;Narrowphase.js:176</code></a>
        </p>



    </div>

    <div class="description">
        
    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Boolean</span>:
            </div>
        </div>


</div>
<div id="method_capsuleCapsule" class="method item">
    <h3 class="name"><code>capsuleCapsule</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>ai</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l520"><code>src&#x2F;collision&#x2F;Narrowphase.js:520</code></a>
        </p>



    </div>

    <div class="description">
        <p>Capsule/capsule narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Capsule.html" class="crosslink">Capsule</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">ai</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Capsule.html" class="crosslink">Capsule</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleCapsule" class="method item">
    <h3 class="name"><code>circleCapsule</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>ai</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l950"><code>src&#x2F;collision&#x2F;Narrowphase.js:950</code></a>
        </p>



    </div>

    <div class="description">
        <p>Circle/capsule Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">ai</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleCircle" class="method item">
    <h3 class="name"><code>circleCircle</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>shapeA</code>
                </li>
                <li class="arg">
                        <code>offsetA</code>
                </li>
                <li class="arg">
                        <code>angleA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
                <li class="arg">
                        <code>shapeB</code>
                </li>
                <li class="arg">
                        <code>offsetB</code>
                </li>
                <li class="arg">
                        <code>angleB</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
                <li class="arg">
                        <code class="optional">[radiusA]</code>
                </li>
                <li class="arg">
                        <code class="optional">[radiusB]</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1308"><code>src&#x2F;collision&#x2F;Narrowphase.js:1308</code></a>
        </p>



    </div>

    <div class="description">
        <p>Circle/circle Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">shapeA</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">offsetA</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angleA</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">shapeB</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">offsetB</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angleB</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name optional">[radiusA]</code>
                        <span class="type">Number</span>
                        <span class="flag optional" title="This parameter is optional.">optional</span>


                    <div class="param-description">
                        <p>Optional radius to use for shapeA</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name optional">[radiusB]</code>
                        <span class="type">Number</span>
                        <span class="flag optional" title="This parameter is optional.">optional</span>


                    <div class="param-description">
                        <p>Optional radius to use for shapeB</p>

                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleConvex" class="method item">
    <h3 class="name"><code>circleConvex</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>circleBody</code>
                </li>
                <li class="arg">
                        <code>circleShape</code>
                </li>
                <li class="arg">
                        <code>circleOffset</code>
                </li>
                <li class="arg">
                        <code>circleAngle</code>
                </li>
                <li class="arg">
                        <code>convexBody</code>
                </li>
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexOffset</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
                <li class="arg">
                        <code>circleRadius</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l967"><code>src&#x2F;collision&#x2F;Narrowphase.js:967</code></a>
        </p>



    </div>

    <div class="description">
        <p>Circle/convex Narrowphase.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">circleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleShape</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleRadius</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleHeightfield" class="method item">
    <h3 class="name"><code>circleHeightfield</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l2355"><code>src&#x2F;collision&#x2F;Narrowphase.js:2355</code></a>
        </p>



    </div>

    <div class="description">
        
    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Heightfield.html" class="crosslink">Heightfield</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleHeightfield" class="method item">
    <h3 class="name"><code>circleHeightfield</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l2176"><code>src&#x2F;collision&#x2F;Narrowphase.js:2176</code></a>
        </p>



    </div>

    <div class="description">
        
    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Heightfield.html" class="crosslink">Heightfield</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleLine" class="method item">
    <h3 class="name"><code>circleLine</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>circleBody</code>
                </li>
                <li class="arg">
                        <code>circleShape</code>
                </li>
                <li class="arg">
                        <code>circleOffset</code>
                </li>
                <li class="arg">
                        <code>circleAngle</code>
                </li>
                <li class="arg">
                        <code>lineBody</code>
                </li>
                <li class="arg">
                        <code>lineShape</code>
                </li>
                <li class="arg">
                        <code>lineOffset</code>
                </li>
                <li class="arg">
                        <code>lineAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
                <li class="arg">
                        <code>lineRadius</code>
                </li>
                <li class="arg">
                        <code>circleRadius</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l780"><code>src&#x2F;collision&#x2F;Narrowphase.js:780</code></a>
        </p>



    </div>

    <div class="description">
        <p>Circle/line Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">circleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleShape</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineShape</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                        <p>If set to true, this function will return the result (intersection or not) without adding equations.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineRadius</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                        <p>Radius to add to the line. Can be used to test Capsules.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleRadius</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                        <p>If set, this value overrides the circle shape radius.</p>

                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circleParticle" class="method item">
    <h3 class="name"><code>circleParticle</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>circleBody</code>
                </li>
                <li class="arg">
                        <code>circleShape</code>
                </li>
                <li class="arg">
                        <code>circleOffset</code>
                </li>
                <li class="arg">
                        <code>circleAngle</code>
                </li>
                <li class="arg">
                        <code>particleBody</code>
                </li>
                <li class="arg">
                        <code>particleShape</code>
                </li>
                <li class="arg">
                        <code>particleOffset</code>
                </li>
                <li class="arg">
                        <code>particleAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1521"><code>src&#x2F;collision&#x2F;Narrowphase.js:1521</code></a>
        </p>



    </div>

    <div class="description">
        <p>Circle/Particle Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">circleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleShape</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">circleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleShape</code>
                        <span class="type"><a href="../classes/Particle.html" class="crosslink">Particle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_circlePlane" class="method item">
    <h3 class="name"><code>circlePlane</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1652"><code>src&#x2F;collision&#x2F;Narrowphase.js:1652</code></a>
        </p>



    </div>

    <div class="description">
        <p>Creates ContactEquations and FrictionEquations for a collision.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                        <p>The first body that should be connected to the equations.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                        <p>The circle shape participating in the collision.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                        <p>Extra offset to take into account for the Shape, in addition to the one in circleBody.position. Will <em>not</em> be rotated by circleBody.angle (maybe it should, for sake of homogenity?). Set to null if none.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                        <p>The second body that should be connected to the equations.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Plane.html" class="crosslink">Plane</a></span>


                    <div class="param-description">
                        <p>The Plane shape that is participating</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                        <p>Extra offset for the plane shape.</p>

                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                        <p>Extra angle to apply to the plane</p>

                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_collidedLastStep" class="method item">
    <h3 class="name"><code>collidedLastStep</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Boolean</span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l218"><code>src&#x2F;collision&#x2F;Narrowphase.js:218</code></a>
        </p>



    </div>

    <div class="description">
        <p>Check if the bodies were in contact since the last reset().</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Boolean</span>:
            </div>
        </div>


</div>
<div id="method_convexCapsule" class="method item">
    <h3 class="name"><code>convexCapsule</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>convexBody</code>
                </li>
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexPosition</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>capsuleBody</code>
                </li>
                <li class="arg">
                        <code>capsuleShape</code>
                </li>
                <li class="arg">
                        <code>capsulePosition</code>
                </li>
                <li class="arg">
                        <code>capsuleAngle</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l432"><code>src&#x2F;collision&#x2F;Narrowphase.js:432</code></a>
        </p>



    </div>

    <div class="description">
        <p>Convex/capsule narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">convexBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexPosition</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleShape</code>
                        <span class="type"><a href="../classes/Capsule.html" class="crosslink">Capsule</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsulePosition</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_convexConvex" class="method item">
    <h3 class="name"><code>convexConvex</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bi</code>
                </li>
                <li class="arg">
                        <code>si</code>
                </li>
                <li class="arg">
                        <code>xi</code>
                </li>
                <li class="arg">
                        <code>ai</code>
                </li>
                <li class="arg">
                        <code>bj</code>
                </li>
                <li class="arg">
                        <code>sj</code>
                </li>
                <li class="arg">
                        <code>xj</code>
                </li>
                <li class="arg">
                        <code>aj</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1722"><code>src&#x2F;collision&#x2F;Narrowphase.js:1722</code></a>
        </p>



    </div>

    <div class="description">
        <p>Convex/convex Narrowphase.See <a href="http://www.altdevblogaday.com/2011/05/13/contact-generation-between-3d-convex-meshes/">this article</a> for more info.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bi</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">si</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xi</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">ai</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bj</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sj</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">xj</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">aj</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_convexLine" class="method item">
    <h3 class="name"><code>convexLine</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>convexBody</code>
                </li>
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexOffset</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>lineBody</code>
                </li>
                <li class="arg">
                        <code>lineShape</code>
                </li>
                <li class="arg">
                        <code>lineOffset</code>
                </li>
                <li class="arg">
                        <code>lineAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l354"><code>src&#x2F;collision&#x2F;Narrowphase.js:354</code></a>
        </p>



    </div>

    <div class="description">
        <p>Convex/line narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">convexBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineShape</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_createContactEquation" class="method item">
    <h3 class="name"><code>createContactEquation</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/ContactEquation.html" class="crosslink">ContactEquation</a></span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l260"><code>src&#x2F;collision&#x2F;Narrowphase.js:260</code></a>
        </p>



    </div>

    <div class="description">
        <p>Creates a ContactEquation, either by reusing an existing object or creating a new one.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/ContactEquation.html" class="crosslink">ContactEquation</a></span>:
            </div>
        </div>


</div>
<div id="method_createFrictionEquation" class="method item">
    <h3 class="name"><code>createFrictionEquation</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/FrictionEquation.html" class="crosslink">FrictionEquation</a></span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l284"><code>src&#x2F;collision&#x2F;Narrowphase.js:284</code></a>
        </p>



    </div>

    <div class="description">
        <p>Creates a FrictionEquation, either by reusing an existing object or creating a new one.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/FrictionEquation.html" class="crosslink">FrictionEquation</a></span>:
            </div>
        </div>


</div>
<div id="method_createFrictionFromContact" class="method item">
    <h3 class="name"><code>createFrictionFromContact</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>contactEquation</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type"><a href="../classes/FrictionEquation.html" class="crosslink">FrictionEquation</a></span>
        </span>







    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l308"><code>src&#x2F;collision&#x2F;Narrowphase.js:308</code></a>
        </p>



    </div>

    <div class="description">
        <p>Creates a FrictionEquation given the data in the ContactEquation. Uses same offset vectors ri and rj, but the tangent vector will be constructed from the collision normal.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">contactEquation</code>
                        <span class="type"><a href="../classes/ContactEquation.html" class="crosslink">ContactEquation</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type"><a href="../classes/FrictionEquation.html" class="crosslink">FrictionEquation</a></span>:
            </div>
        </div>


</div>
<div id="method_findSeparatingAxis" class="method item">
    <h3 class="name"><code>findSeparatingAxis</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>c1</code>
                </li>
                <li class="arg">
                        <code>offset1</code>
                </li>
                <li class="arg">
                        <code>angle1</code>
                </li>
                <li class="arg">
                        <code>c2</code>
                </li>
                <li class="arg">
                        <code>offset2</code>
                </li>
                <li class="arg">
                        <code>angle2</code>
                </li>
                <li class="arg">
                        <code>sepAxis</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Boolean</span>
        </span>




        <span class="flag static">static</span>



    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1956"><code>src&#x2F;collision&#x2F;Narrowphase.js:1956</code></a>
        </p>



    </div>

    <div class="description">
        <p>Find a separating axis between the shapes, that maximizes the separating distance between them.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">c1</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">offset1</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angle1</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">c2</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">offset2</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angle2</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">sepAxis</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                        <p>The resulting axis</p>

                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Boolean</span>:
                    <p>Whether the axis could be found.</p>

            </div>
        </div>


</div>
<div id="method_getClosestEdge" class="method item">
    <h3 class="name"><code>getClosestEdge</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>c</code>
                </li>
                <li class="arg">
                        <code>angle</code>
                </li>
                <li class="arg">
                        <code>axis</code>
                </li>
                <li class="arg">
                        <code>flip</code>
                </li>
            </ul><span class="paren">)</span>
        </div>

        <span class="returns-inline">
            <span class="type">Number</span>
        </span>




        <span class="flag static">static</span>



    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l2126"><code>src&#x2F;collision&#x2F;Narrowphase.js:2126</code></a>
        </p>



    </div>

    <div class="description">
        <p>Get the edge that has a normal closest to an axis.</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">c</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">axis</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">flip</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>

        <div class="returns">
            <h4>Returns:</h4>

            <div class="returns-description">
                        <span class="type">Number</span>:
                    <p>Index of the edge that is closest. This index and the next spans the resulting edge. Returns -1 if failed.</p>

            </div>
        </div>


</div>
<div id="method_lineBox" class="method item">
    <h3 class="name"><code>lineBox</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>lineBody</code>
                </li>
                <li class="arg">
                        <code>lineShape</code>
                </li>
                <li class="arg">
                        <code>lineOffset</code>
                </li>
                <li class="arg">
                        <code>lineAngle</code>
                </li>
                <li class="arg">
                        <code>boxBody</code>
                </li>
                <li class="arg">
                        <code>boxShape</code>
                </li>
                <li class="arg">
                        <code>boxOffset</code>
                </li>
                <li class="arg">
                        <code>boxAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l388"><code>src&#x2F;collision&#x2F;Narrowphase.js:388</code></a>
        </p>



    </div>

    <div class="description">
        <p>Line/box narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">lineBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineShape</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">boxBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">boxShape</code>
                        <span class="type"><a href="../classes/Box.html" class="crosslink">Box</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">boxOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">boxAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_lineCapsule" class="method item">
    <h3 class="name"><code>lineCapsule</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>lineBody</code>
                </li>
                <li class="arg">
                        <code>lineShape</code>
                </li>
                <li class="arg">
                        <code>linePosition</code>
                </li>
                <li class="arg">
                        <code>lineAngle</code>
                </li>
                <li class="arg">
                        <code>capsuleBody</code>
                </li>
                <li class="arg">
                        <code>capsuleShape</code>
                </li>
                <li class="arg">
                        <code>capsulePosition</code>
                </li>
                <li class="arg">
                        <code>capsuleAngle</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l483"><code>src&#x2F;collision&#x2F;Narrowphase.js:483</code></a>
        </p>



    </div>

    <div class="description">
        <p>Capsule/line narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">lineBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineShape</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">linePosition</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleShape</code>
                        <span class="type"><a href="../classes/Capsule.html" class="crosslink">Capsule</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsulePosition</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_lineLine" class="method item">
    <h3 class="name"><code>lineLine</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>bodyA</code>
                </li>
                <li class="arg">
                        <code>shapeA</code>
                </li>
                <li class="arg">
                        <code>positionA</code>
                </li>
                <li class="arg">
                        <code>angleA</code>
                </li>
                <li class="arg">
                        <code>bodyB</code>
                </li>
                <li class="arg">
                        <code>shapeB</code>
                </li>
                <li class="arg">
                        <code>positionB</code>
                </li>
                <li class="arg">
                        <code>angleB</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l625"><code>src&#x2F;collision&#x2F;Narrowphase.js:625</code></a>
        </p>



    </div>

    <div class="description">
        <p>Line/line narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">bodyA</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">shapeA</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">positionA</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angleA</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">bodyB</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">shapeB</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">positionB</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">angleB</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_particleConvex" class="method item">
    <h3 class="name"><code>particleConvex</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>particleBody</code>
                </li>
                <li class="arg">
                        <code>particleShape</code>
                </li>
                <li class="arg">
                        <code>particleOffset</code>
                </li>
                <li class="arg">
                        <code>particleAngle</code>
                </li>
                <li class="arg">
                        <code>convexBody</code>
                </li>
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexOffset</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1178"><code>src&#x2F;collision&#x2F;Narrowphase.js:1178</code></a>
        </p>



    </div>

    <div class="description">
        <p>Particle/convex Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">particleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleShape</code>
                        <span class="type"><a href="../classes/Particle.html" class="crosslink">Particle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_particlePlane" class="method item">
    <h3 class="name"><code>particlePlane</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>particleBody</code>
                </li>
                <li class="arg">
                        <code>particleShape</code>
                </li>
                <li class="arg">
                        <code>particleOffset</code>
                </li>
                <li class="arg">
                        <code>particleAngle</code>
                </li>
                <li class="arg">
                        <code>planeBody</code>
                </li>
                <li class="arg">
                        <code>planeShape</code>
                </li>
                <li class="arg">
                        <code>planeOffset</code>
                </li>
                <li class="arg">
                        <code>planeAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1458"><code>src&#x2F;collision&#x2F;Narrowphase.js:1458</code></a>
        </p>



    </div>

    <div class="description">
        <p>Narrowphase for particle vs plane</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">particleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleShape</code>
                        <span class="type"><a href="../classes/Particle.html" class="crosslink">Particle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">particleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeShape</code>
                        <span class="type"><a href="../classes/Plane.html" class="crosslink">Plane</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_planeCapsule" class="method item">
    <h3 class="name"><code>planeCapsule</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>planeBody</code>
                </li>
                <li class="arg">
                        <code>planeShape</code>
                </li>
                <li class="arg">
                        <code>planeOffset</code>
                </li>
                <li class="arg">
                        <code>planeAngle</code>
                </li>
                <li class="arg">
                        <code>capsuleBody</code>
                </li>
                <li class="arg">
                        <code>capsuleShape</code>
                </li>
                <li class="arg">
                        <code>capsuleOffset</code>
                </li>
                <li class="arg">
                        <code>capsuleAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1582"><code>src&#x2F;collision&#x2F;Narrowphase.js:1582</code></a>
        </p>



    </div>

    <div class="description">
        
    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">planeBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeShape</code>
                        <span class="type"><a href="../classes/Circle.html" class="crosslink">Circle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleShape</code>
                        <span class="type"><a href="../classes/Particle.html" class="crosslink">Particle</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">capsuleAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_planeConvex" class="method item">
    <h3 class="name"><code>planeConvex</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>planeBody</code>
                </li>
                <li class="arg">
                        <code>planeShape</code>
                </li>
                <li class="arg">
                        <code>planeOffset</code>
                </li>
                <li class="arg">
                        <code>planeAngle</code>
                </li>
                <li class="arg">
                        <code>convexBody</code>
                </li>
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexOffset</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>justTest</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1373"><code>src&#x2F;collision&#x2F;Narrowphase.js:1373</code></a>
        </p>



    </div>

    <div class="description">
        <p>Plane/Convex Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">planeBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeShape</code>
                        <span class="type"><a href="../classes/Plane.html" class="crosslink">Plane</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">justTest</code>
                        <span class="type">Boolean</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_planeLine" class="method item">
    <h3 class="name"><code>planeLine</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>planeBody</code>
                </li>
                <li class="arg">
                        <code>planeShape</code>
                </li>
                <li class="arg">
                        <code>planeOffset</code>
                </li>
                <li class="arg">
                        <code>planeAngle</code>
                </li>
                <li class="arg">
                        <code>lineBody</code>
                </li>
                <li class="arg">
                        <code>lineShape</code>
                </li>
                <li class="arg">
                        <code>lineOffset</code>
                </li>
                <li class="arg">
                        <code>lineAngle</code>
                </li>
            </ul><span class="paren">)</span>
        </div>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l658"><code>src&#x2F;collision&#x2F;Narrowphase.js:658</code></a>
        </p>



    </div>

    <div class="description">
        <p>Plane/line Narrowphase</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">planeBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeShape</code>
                        <span class="type"><a href="../classes/Plane.html" class="crosslink">Plane</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">planeAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineBody</code>
                        <span class="type"><a href="../classes/Body.html" class="crosslink">Body</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineShape</code>
                        <span class="type"><a href="../classes/Line.html" class="crosslink">Line</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">lineAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_projectConvexOntoAxis" class="method item">
    <h3 class="name"><code>projectConvexOntoAxis</code></h3>

        <div class="args">
            <span class="paren">(</span><ul class="args-list inline commas">
                <li class="arg">
                        <code>convexShape</code>
                </li>
                <li class="arg">
                        <code>convexOffset</code>
                </li>
                <li class="arg">
                        <code>convexAngle</code>
                </li>
                <li class="arg">
                        <code>worldAxis</code>
                </li>
                <li class="arg">
                        <code>result</code>
                </li>
            </ul><span class="paren">)</span>
        </div>





        <span class="flag static">static</span>



    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l1904"><code>src&#x2F;collision&#x2F;Narrowphase.js:1904</code></a>
        </p>



    </div>

    <div class="description">
        <p>Project a Convex onto a world-oriented axis</p>

    </div>

        <div class="params">
            <h4>Parameters:</h4>

            <ul class="params-list">
                <li class="param">
                        <code class="param-name">convexShape</code>
                        <span class="type"><a href="../classes/Convex.html" class="crosslink">Convex</a></span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexOffset</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">convexAngle</code>
                        <span class="type">Number</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">worldAxis</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
                <li class="param">
                        <code class="param-name">result</code>
                        <span class="type">Array</span>


                    <div class="param-description">
                         
                    </div>

                </li>
            </ul>
        </div>



</div>
<div id="method_reset" class="method item">
    <h3 class="name"><code>reset</code></h3>

        <span class="paren">()</span>








    <div class="meta">
                <p>
                Defined in
        <a href="../files/src_collision_Narrowphase.js.html#l231"><code>src&#x2F;collision&#x2F;Narrowphase.js:231</code></a>
        </p>



    </div>

    <div class="description">
        <p>Throws away the old equations and gets ready to create new</p>

    </div>




</div>
            </div>

            <div id="properties" class="api-class-tabpanel">
                <h2 class="off-left">Properties</h2>

                    <div id="property_collidingBodiesLastStep" class="property item private">
                        <h3 class="name"><code>collidingBodiesLastStep</code></h3>
                        <span class="type"><a href="../classes/TupleDictionary.html" class="crosslink">TupleDictionary</a></span>
                    
                    
                            <span class="flag private">private</span>
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l157"><code>src&#x2F;collision&#x2F;Narrowphase.js:157</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Keeps track of the colliding bodies last step.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_contactEquationPool" class="property item">
                        <h3 class="name"><code>contactEquationPool</code></h3>
                        <span class="type">ContactEquationPool</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l96"><code>src&#x2F;collision&#x2F;Narrowphase.js:96</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Keeps track of the allocated ContactEquations.</p>
                    
                        </div>
                    
                    
                            <div class="example">
                                <h4>Example:</h4>
                    
                                <div class="example-content">
                                    <pre class="code prettyprint"><code>// Allocate a few equations before starting the simulation.
                    // This way, no contact objects need to be created on the fly in the game loop.
                    world.narrowphase.contactEquationPool.resize(1024);
                    world.narrowphase.frictionEquationPool.resize(1024);
                    </code></pre>
                                </div>
                            </div>
                    
                    </div>
                    <div id="property_contactEquations" class="property item">
                        <h3 class="name"><code>contactEquations</code></h3>
                        <span class="type">Array</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l50"><code>src&#x2F;collision&#x2F;Narrowphase.js:50</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_contactSkinSize" class="property item">
                        <h3 class="name"><code>contactSkinSize</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l165"><code>src&#x2F;collision&#x2F;Narrowphase.js:165</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Contact skin size value to use in the next contact equations.</p>
                    
                        </div>
                    
                            <p><strong>Default:</strong> 0.01</p>
                    
                    
                    </div>
                    <div id="property_enabledEquations" class="property item">
                        <h3 class="name"><code>enabledEquations</code></h3>
                        <span class="type">Boolean</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l69"><code>src&#x2F;collision&#x2F;Narrowphase.js:69</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Whether to make equations enabled in upcoming contacts.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_enableFriction" class="property item">
                        <h3 class="name"><code>enableFriction</code></h3>
                        <span class="type">Boolean</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l62"><code>src&#x2F;collision&#x2F;Narrowphase.js:62</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Whether to make friction equations in the upcoming contacts.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_enableFrictionReduction" class="property item deprecated">
                        <h3 class="name"><code>enableFrictionReduction</code></h3>
                        <span class="type">Boolean</span>
                    
                            <span class="flag deprecated" title="This flag will be removed when the feature is stable enough.">deprecated</span>
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l148"><code>src&#x2F;collision&#x2F;Narrowphase.js:148</code></a>
                            </p>
                    
                                <p>Deprecated: This flag will be removed when the feature is stable enough.</p>
                    
                        </div>
                    
                        <div class="description">
                            <p>Enable reduction of friction equations. If disabled, a box on a plane will generate 2 contact equations and 2 friction equations. If enabled, there will be only one friction equation. Same kind of simplifications are made  for all collision types.</p>
                    
                        </div>
                    
                            <p><strong>Default:</strong> true</p>
                    
                    
                    </div>
                    <div id="property_frictionCoefficient" class="property item">
                        <h3 class="name"><code>frictionCoefficient</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l83"><code>src&#x2F;collision&#x2F;Narrowphase.js:83</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The friction value to use in the upcoming friction equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_frictionEquationPool" class="property item">
                        <h3 class="name"><code>frictionEquationPool</code></h3>
                        <span class="type">FrictionEquationPool</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l109"><code>src&#x2F;collision&#x2F;Narrowphase.js:109</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Keeps track of the allocated ContactEquations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_frictionEquations" class="property item">
                        <h3 class="name"><code>frictionEquations</code></h3>
                        <span class="type">Array</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l56"><code>src&#x2F;collision&#x2F;Narrowphase.js:56</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_frictionRelaxation" class="property item">
                        <h3 class="name"><code>frictionRelaxation</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l141"><code>src&#x2F;collision&#x2F;Narrowphase.js:141</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The relaxation value to use in the next friction equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_frictionStiffness" class="property item">
                        <h3 class="name"><code>frictionStiffness</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l134"><code>src&#x2F;collision&#x2F;Narrowphase.js:134</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The stiffness value to use in the next friction equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_restitution" class="property item">
                        <h3 class="name"><code>restitution</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l115"><code>src&#x2F;collision&#x2F;Narrowphase.js:115</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The restitution value to use in the next contact equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_slipForce" class="property item">
                        <h3 class="name"><code>slipForce</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l76"><code>src&#x2F;collision&#x2F;Narrowphase.js:76</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The friction slip force to use when creating friction equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_stiffness" class="property item">
                        <h3 class="name"><code>stiffness</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l128"><code>src&#x2F;collision&#x2F;Narrowphase.js:128</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The stiffness value to use in the next contact equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_stiffness" class="property item">
                        <h3 class="name"><code>stiffness</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l122"><code>src&#x2F;collision&#x2F;Narrowphase.js:122</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>The stiffness value to use in the next contact equations.</p>
                    
                        </div>
                    
                    
                    
                    </div>
                    <div id="property_surfaceVelocity" class="property item">
                        <h3 class="name"><code>surfaceVelocity</code></h3>
                        <span class="type">Number</span>
                    
                    
                    
                    
                    
                        <div class="meta">
                                    <p>
                                    Defined in
                            <a href="../files/src_collision_Narrowphase.js.html#l90"><code>src&#x2F;collision&#x2F;Narrowphase.js:90</code></a>
                            </p>
                    
                    
                        </div>
                    
                        <div class="description">
                            <p>Will be the .relativeVelocity in each produced FrictionEquation.</p>
                    
                        </div>
                    
                    
                    
                    </div>
            </div>


    </div>
</div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>
<script src="../assets/vendor/prettify/prettify-min.js"></script>
<script>prettyPrint();</script>
<script src="../assets/js/yui-prettify.js"></script>
<script src="../assets/../api.js"></script>
<script src="../assets/js/api-filter.js"></script>
<script src="../assets/js/api-list.js"></script>
<script src="../assets/js/api-search.js"></script>
<script src="../assets/js/apidocs.js"></script>
</body>
</html>