aboutsummaryrefslogtreecommitdiff
path: root/PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html
diff options
context:
space:
mode:
authorgit perforce import user <a@b>2016-10-25 12:29:14 -0600
committerSheikh Dawood Abdul Ajees <Sheikh Dawood Abdul Ajees>2016-10-25 18:56:37 -0500
commit3dfe2108cfab31ba3ee5527e217d0d8e99a51162 (patch)
treefa6485c169e50d7415a651bf838f5bcd0fd3bfbd /PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html
downloadphysx-3.4-3dfe2108cfab31ba3ee5527e217d0d8e99a51162.tar.xz
physx-3.4-3dfe2108cfab31ba3ee5527e217d0d8e99a51162.zip
Initial commit:
PhysX 3.4.0 Update @ 21294896 APEX 1.4.0 Update @ 21275617 [CL 21300167]
Diffstat (limited to 'PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html')
-rw-r--r--PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html1069
1 files changed, 1069 insertions, 0 deletions
diff --git a/PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html b/PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html
new file mode 100644
index 00000000..53ff9bbf
--- /dev/null
+++ b/PhysX_3.4/Documentation/PhysXAPI/files/classPxQuat.html
@@ -0,0 +1,1069 @@
+<html>
+ <head>
+ <title>NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxQuat Class Reference</title>
+ <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
+ <LINK HREF="NVIDIA.css" REL="stylesheet" TYPE="text/css">
+ </head>
+
+ <body bgcolor="#FFFFFF">
+ <div id="header">
+ <hr class="first">
+ <img alt="" src="images/PhysXlogo.png" align="middle"> <br>
+ <center>
+ <a class="qindex" href="main.html">Main Page</a> &nbsp;
+ <a class="qindex" href="hierarchy.html">Class Hierarchy</a> &nbsp;
+ <a class="qindex" href="annotated.html">Compound List</a> &nbsp;
+ <a class="qindex" href="functions.html">Compound Members</a> &nbsp;
+ </center>
+ <hr class="second">
+ </div>
+<!-- Generated by Doxygen 1.5.8 -->
+<div class="contents">
+<h1>PxQuat Class Reference<br>
+<small>
+[<a class="el" href="group__foundation.html">Foundation</a>]</small>
+</h1><!-- doxytag: class="PxQuat" -->This is a quaternion class. For more information on quaternion mathematics consult a mathematics source on complex numbers.
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="PxQuat_8h-source.html">PxQuat.h</a>&gt;</code>
+<p>
+
+<p>
+<a href="classPxQuat-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
+<tr><td></td></tr>
+<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_FORCE_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#fac7f63b57840965157cf720bb6faddc">PxQuat</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor, does not do any initialization. <a href="#fac7f63b57840965157cf720bb6faddc"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#13d4cf835204d37e90fecef45659c790">PxQuat</a> (<a class="el" href="group__foundation.html#g70160ca5bbafef277790b3e0f12baf38">PxIDENTITY</a> r)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">identity constructor <a href="#13d4cf835204d37e90fecef45659c790"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_FORCE_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#b364d7ce854065cd32b2dbbd8d30e279">PxQuat</a> (float r)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor from a scalar: sets the real part w to the scalar value, and the imaginary parts (x,y,z) to zero. <a href="#b364d7ce854065cd32b2dbbd8d30e279"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_FORCE_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#ffc77743ed2c2cd3a90749de917187b0">PxQuat</a> (float nx, float ny, float nz, float nw)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Constructor. Take note of the order of the elements! <a href="#ffc77743ed2c2cd3a90749de917187b0"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#96cdb8dff7a2ed40a71912edf19dd812">PxQuat</a> (float angleRadians, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;unitAxis)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates from angle-axis representation. <a href="#96cdb8dff7a2ed40a71912edf19dd812"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_FORCE_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#e12a02d9cb43b5e2c7dc083563cf1586">PxQuat</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;v)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy ctor. <a href="#e12a02d9cb43b5e2c7dc083563cf1586"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__foundation.html#gf4ea3337baa14716f97e5cae7f6047c2">PxQuat</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;m)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates from orientation matrix. <a href="group__foundation.html#gf4ea3337baa14716f97e5cae7f6047c2"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#7535248b780fc139b72905bcf5c1f922">isIdentity</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if quat is identity <a href="#7535248b780fc139b72905bcf5c1f922"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#a435b2284fdc3d4ad85bec6074f2bad4">isFinite</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if all elements are finite (not NAN or INF, etc.) <a href="#a435b2284fdc3d4ad85bec6074f2bad4"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#3890ca4efba038ab0fc84bb39c5267db">isUnit</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if finite and magnitude is close to unit <a href="#3890ca4efba038ab0fc84bb39c5267db"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#935090e7b3017e74a7f8dae595bcaec9">isSane</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if finite and magnitude is reasonably close to unit to allow for some accumulation of error vs isValid <a href="#935090e7b3017e74a7f8dae595bcaec9"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#9da7a84ebce6482bbeba84e60c83ac20">operator==</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if the two quaternions are exactly equal <a href="#9da7a84ebce6482bbeba84e60c83ac20"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#6fe471d2db21c719e53e21b520dcbbac">toRadiansAndUnitAxis</a> (float &amp;angle, <a class="el" href="classPxVec3.html">PxVec3</a> &amp;axis) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">converts this quaternion to angle-axis representation <a href="#6fe471d2db21c719e53e21b520dcbbac"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#f625481b6f1431bef8eefcc22f2497de">getAngle</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the angle between this quat and the identity quaternion. <a href="#f625481b6f1431bef8eefcc22f2497de"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#c77bec66cbe4760a4bffbcd51c495253">getAngle</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets the angle between this quat and the argument. <a href="#c77bec66cbe4760a4bffbcd51c495253"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#765d6d921bcacc14a2548205eb32b402">magnitudeSquared</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">This is the squared 4D vector length, should be 1 for unit quaternions. <a href="#765d6d921bcacc14a2548205eb32b402"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#c41840a9219dd8c85c61233020ffab5a">dot</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;v) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns the scalar product of this and other. <a href="#c41840a9219dd8c85c61233020ffab5a"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#a9cff7e69cad7e5a681a3ff471efd5cb">getNormalized</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#b9a78b5618f8e4b892c91f9fd66a680e">magnitude</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#77a42662202126a13f2f9fc12013fe70">normalize</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">maps to the closest unit quaternion. <a href="#77a42662202126a13f2f9fc12013fe70"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#a4418a046f8851753a23a375515b0614">getConjugate</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#f75c924f631c9ae608821a05b9b59a7f">getImaginaryPart</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#609e8019db1d8d8ae1e007e160f5e4f6">getBasisVector0</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#1f4c3fff7fffc8694d04298f36696b82">getBasisVector1</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#4b77458e75985b09bce8a933e83193c5">getBasisVector2</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#b5ffbf8b2b7bd871e6ac0b854fd5730e">rotate</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;v) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#6ce4a234b750b076459632e60579cf78">rotateInv</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;v) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#4f3ea9ae559903398b3c973458a6aa11">operator=</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;p)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator. <a href="#4f3ea9ae559903398b3c973458a6aa11"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#06c67f76789048d93e5119e2ef7b9451">operator*=</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#2ab2f7c410b2dfeedf984d9c29264c10">operator+=</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#00e4863332f965bb73a8849718062677">operator-=</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#293e12f666d5877f0de4b230f119a125">operator*=</a> (const float s)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#67da1625a38e2b44a0e9850dd67a0789">operator*</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#b57226b2f11124a0df3ef50b167495c1">operator+</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#5d4f0fe6c51fab6f0d1731a84168faa3">operator-</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#543fc02097d753e9b28377873cfe1f29">operator-</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q) const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#0d15d51d10b18624f05f2ca0d2c71ba4">operator*</a> (float r) const </td></tr>
+
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#c7275be0f2d9162cff34b2d43f2ab179">x</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#0988cef7bc3fbdcd8cf37974c5edd611">y</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#6773bfd82393a8dde22ddef5f0900d06">z</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxQuat.html#84fb33d995ed4e6a26ac3f22523f0b54">w</a></td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+This is a quaternion class. For more information on quaternion mathematics consult a mathematics source on complex numbers. <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="fac7f63b57840965157cf720bb6faddc"></a><!-- doxytag: member="PxQuat::PxQuat" ref="fac7f63b57840965157cf720bb6faddc" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Default constructor, does not do any initialization.
+<p>
+
+<p>Referenced by <a class="el" href="PxMat33_8h-source.html#l00357">PxQuat()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="13d4cf835204d37e90fecef45659c790"></a><!-- doxytag: member="PxQuat::PxQuat" ref="13d4cf835204d37e90fecef45659c790" args="(PxIDENTITY r)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="group__foundation.html#g70160ca5bbafef277790b3e0f12baf38">PxIDENTITY</a>&nbsp;</td>
+ <td class="paramname"> <em>r</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+identity constructor
+<p>
+
+<p>References <a class="el" href="PxPreprocessor_8h-source.html#l00456">PX_UNUSED()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="b364d7ce854065cd32b2dbbd8d30e279"></a><!-- doxytag: member="PxQuat::PxQuat" ref="b364d7ce854065cd32b2dbbd8d30e279" args="(float r)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>r</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline, explicit]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor from a scalar: sets the real part w to the scalar value, and the imaginary parts (x,y,z) to zero.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="ffc77743ed2c2cd3a90749de917187b0"></a><!-- doxytag: member="PxQuat::PxQuat" ref="ffc77743ed2c2cd3a90749de917187b0" args="(float nx, float ny, float nz, float nw)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>nx</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>ny</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>nz</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>nw</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Constructor. Take note of the order of the elements!
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="96cdb8dff7a2ed40a71912edf19dd812"></a><!-- doxytag: member="PxQuat::PxQuat" ref="96cdb8dff7a2ed40a71912edf19dd812" args="(float angleRadians, const PxVec3 &amp;unitAxis)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>angleRadians</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>unitAxis</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Creates from angle-axis representation.
+<p>
+Axis must be normalized!<p>
+Angle is in radians!<p>
+<b>Unit:</b> Radians
+<p>References <a class="el" href="PxVec3_8h-source.html#l00182">PxVec3::magnitude()</a>, <a class="el" href="PxAssert_8h-source.html#l00061">PX_ASSERT</a>, <a class="el" href="PxMath_8h-source.html#l00107">PxAbs()</a>, <a class="el" href="PxMath_8h-source.html#l00182">PxCos()</a>, <a class="el" href="PxMath_8h-source.html#l00170">PxSin()</a>, <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::x</a>, <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::y</a>, and <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="e12a02d9cb43b5e2c7dc083563cf1586"></a><!-- doxytag: member="PxQuat::PxQuat" ref="e12a02d9cb43b5e2c7dc083563cf1586" args="(const PxQuat &amp;v)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxQuat::PxQuat </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>v</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Copy ctor.
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="c41840a9219dd8c85c61233020ffab5a"></a><!-- doxytag: member="PxQuat::dot" ref="c41840a9219dd8c85c61233020ffab5a" args="(const PxQuat &amp;v) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE float PxQuat::dot </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>v</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns the scalar product of this and other.
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="c77bec66cbe4760a4bffbcd51c495253"></a><!-- doxytag: member="PxQuat::getAngle" ref="c77bec66cbe4760a4bffbcd51c495253" args="(const PxQuat &amp;q) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE float PxQuat::getAngle </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the angle between this quat and the argument.
+<p>
+<b>Unit:</b> Radians
+<p>References <a class="el" href="PxMath_8h-source.html#l00236">PxAcos()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="f625481b6f1431bef8eefcc22f2497de"></a><!-- doxytag: member="PxQuat::getAngle" ref="f625481b6f1431bef8eefcc22f2497de" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE float PxQuat::getAngle </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Gets the angle between this quat and the identity quaternion.
+<p>
+<b>Unit:</b> Radians
+<p>References <a class="el" href="PxMath_8h-source.html#l00236">PxAcos()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="609e8019db1d8d8ae1e007e160f5e4f6"></a><!-- doxytag: member="PxQuat::getBasisVector0" ref="609e8019db1d8d8ae1e007e160f5e4f6" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::getBasisVector0 </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+brief computes rotation of x-axis
+</div>
+</div><p>
+<a class="anchor" name="1f4c3fff7fffc8694d04298f36696b82"></a><!-- doxytag: member="PxQuat::getBasisVector1" ref="1f4c3fff7fffc8694d04298f36696b82" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::getBasisVector1 </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+brief computes rotation of y-axis
+</div>
+</div><p>
+<a class="anchor" name="4b77458e75985b09bce8a933e83193c5"></a><!-- doxytag: member="PxQuat::getBasisVector2" ref="4b77458e75985b09bce8a933e83193c5" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::getBasisVector2 </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+brief computes rotation of z-axis
+</div>
+</div><p>
+<a class="anchor" name="a4418a046f8851753a23a375515b0614"></a><!-- doxytag: member="PxQuat::getConjugate" ref="a4418a046f8851753a23a375515b0614" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::getConjugate </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxMassProperties_8h-source.html#l00245">PxMassProperties::scaleInertia()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="f75c924f631c9ae608821a05b9b59a7f"></a><!-- doxytag: member="PxQuat::getImaginaryPart" ref="f75c924f631c9ae608821a05b9b59a7f" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::getImaginaryPart </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="a9cff7e69cad7e5a681a3ff471efd5cb"></a><!-- doxytag: member="PxQuat::getNormalized" ref="a9cff7e69cad7e5a681a3ff471efd5cb" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::getNormalized </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="a435b2284fdc3d4ad85bec6074f2bad4"></a><!-- doxytag: member="PxQuat::isFinite" ref="a435b2284fdc3d4ad85bec6074f2bad4" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE bool PxQuat::isFinite </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if all elements are finite (not NAN or INF, etc.)
+<p>
+
+<p>References <a class="el" href="PxMath_8h-source.html#l00292">PxIsFinite()</a>.</p>
+
+<p>Referenced by <a class="el" href="PxMassProperties_8h-source.html#l00186">PxMassProperties::getMassSpaceInertia()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="7535248b780fc139b72905bcf5c1f922"></a><!-- doxytag: member="PxQuat::isIdentity" ref="7535248b780fc139b72905bcf5c1f922" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE bool PxQuat::isIdentity </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if quat is identity
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="935090e7b3017e74a7f8dae595bcaec9"></a><!-- doxytag: member="PxQuat::isSane" ref="935090e7b3017e74a7f8dae595bcaec9" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE bool PxQuat::isSane </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if finite and magnitude is reasonably close to unit to allow for some accumulation of error vs isValid
+<p>
+
+<p>References <a class="el" href="PxMath_8h-source.html#l00107">PxAbs()</a>.</p>
+
+<p>Referenced by <a class="el" href="PxTransform_8h-source.html#l00067">PxTransform::PxTransform()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="3890ca4efba038ab0fc84bb39c5267db"></a><!-- doxytag: member="PxQuat::isUnit" ref="3890ca4efba038ab0fc84bb39c5267db" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE bool PxQuat::isUnit </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if finite and magnitude is close to unit
+<p>
+
+<p>References <a class="el" href="PxMath_8h-source.html#l00107">PxAbs()</a>.</p>
+
+<p>Referenced by <a class="el" href="PxTriangleMeshGeometry_8h-source.html#l00131">PxTriangleMeshGeometry::isValid()</a>, <a class="el" href="PxConvexMeshGeometry_8h-source.html#l00131">PxConvexMeshGeometry::isValid()</a>, <a class="el" href="PxMeshScale_8h-source.html#l00103">PxMeshScale::PxMeshScale()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00226">PxMassProperties::rotateInertia()</a>, and <a class="el" href="PxMassProperties_8h-source.html#l00245">PxMassProperties::scaleInertia()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="b9a78b5618f8e4b892c91f9fd66a680e"></a><!-- doxytag: member="PxQuat::magnitude" ref="b9a78b5618f8e4b892c91f9fd66a680e" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE float PxQuat::magnitude </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>References <a class="el" href="PxMath_8h-source.html#l00144">PxSqrt()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="765d6d921bcacc14a2548205eb32b402"></a><!-- doxytag: member="PxQuat::magnitudeSquared" ref="765d6d921bcacc14a2548205eb32b402" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE float PxQuat::magnitudeSquared </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+This is the squared 4D vector length, should be 1 for unit quaternions.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="77a42662202126a13f2f9fc12013fe70"></a><!-- doxytag: member="PxQuat::normalize" ref="77a42662202126a13f2f9fc12013fe70" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE float PxQuat::normalize </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+maps to the closest unit quaternion.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="0d15d51d10b18624f05f2ca0d2c71ba4"></a><!-- doxytag: member="PxQuat::operator*" ref="0d15d51d10b18624f05f2ca0d2c71ba4" args="(float r) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::operator* </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>r</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="67da1625a38e2b44a0e9850dd67a0789"></a><!-- doxytag: member="PxQuat::operator*" ref="67da1625a38e2b44a0e9850dd67a0789" args="(const PxQuat &amp;q) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::operator* </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+quaternion multiplication
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="293e12f666d5877f0de4b230f119a125"></a><!-- doxytag: member="PxQuat::operator*=" ref="293e12f666d5877f0de4b230f119a125" args="(const float s)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&amp; PxQuat::operator*= </td>
+ <td>(</td>
+ <td class="paramtype">const float&nbsp;</td>
+ <td class="paramname"> <em>s</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="06c67f76789048d93e5119e2ef7b9451"></a><!-- doxytag: member="PxQuat::operator*=" ref="06c67f76789048d93e5119e2ef7b9451" args="(const PxQuat &amp;q)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&amp; PxQuat::operator*= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="b57226b2f11124a0df3ef50b167495c1"></a><!-- doxytag: member="PxQuat::operator+" ref="b57226b2f11124a0df3ef50b167495c1" args="(const PxQuat &amp;q) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::operator+ </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+quaternion addition
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="2ab2f7c410b2dfeedf984d9c29264c10"></a><!-- doxytag: member="PxQuat::operator+=" ref="2ab2f7c410b2dfeedf984d9c29264c10" args="(const PxQuat &amp;q)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&amp; PxQuat::operator+= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="543fc02097d753e9b28377873cfe1f29"></a><!-- doxytag: member="PxQuat::operator&#45;" ref="543fc02097d753e9b28377873cfe1f29" args="(const PxQuat &amp;q) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::operator- </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="5d4f0fe6c51fab6f0d1731a84168faa3"></a><!-- doxytag: member="PxQuat::operator&#45;" ref="5d4f0fe6c51fab6f0d1731a84168faa3" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a> PxQuat::operator- </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+quaternion subtraction
+</div>
+</div><p>
+<a class="anchor" name="00e4863332f965bb73a8849718062677"></a><!-- doxytag: member="PxQuat::operator&#45;=" ref="00e4863332f965bb73a8849718062677" args="(const PxQuat &amp;q)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&amp; PxQuat::operator-= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="4f3ea9ae559903398b3c973458a6aa11"></a><!-- doxytag: member="PxQuat::operator=" ref="4f3ea9ae559903398b3c973458a6aa11" args="(const PxQuat &amp;p)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxQuat.html">PxQuat</a>&amp; PxQuat::operator= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>p</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Assignment operator.
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="9da7a84ebce6482bbeba84e60c83ac20"></a><!-- doxytag: member="PxQuat::operator==" ref="9da7a84ebce6482bbeba84e60c83ac20" args="(const PxQuat &amp;q) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE bool PxQuat::operator== </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>q</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if the two quaternions are exactly equal
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="b5ffbf8b2b7bd871e6ac0b854fd5730e"></a><!-- doxytag: member="PxQuat::rotate" ref="b5ffbf8b2b7bd871e6ac0b854fd5730e" args="(const PxVec3 &amp;v) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::rotate </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>v</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+rotates passed vec by this (assumed unitary)
+<p>References <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::x</a>, <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::y</a>, and <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::z</a>.</p>
+
+<p>Referenced by <a class="el" href="PxMassProperties_8h-source.html#l00083">PxMassProperties::PxMassProperties()</a>, and <a class="el" href="PxTransform_8h-source.html#l00172">PxTransform::transformInv()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="6ce4a234b750b076459632e60579cf78"></a><!-- doxytag: member="PxQuat::rotateInv" ref="6ce4a234b750b076459632e60579cf78" args="(const PxVec3 &amp;v) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a> PxQuat::rotateInv </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>v</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+inverse rotates passed vec by this (assumed unitary)
+<p>References <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::x</a>, <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::y</a>, and <a class="el" href="PxVec3_8h-source.html#l00380">PxVec3::z</a>.</p>
+
+<p>Referenced by <a class="el" href="PxMassProperties_8h-source.html#l00083">PxMassProperties::PxMassProperties()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="6fe471d2db21c719e53e21b520dcbbac"></a><!-- doxytag: member="PxQuat::toRadiansAndUnitAxis" ref="6fe471d2db21c719e53e21b520dcbbac" args="(float &amp;angle, PxVec3 &amp;axis) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE void PxQuat::toRadiansAndUnitAxis </td>
+ <td>(</td>
+ <td class="paramtype">float &amp;&nbsp;</td>
+ <td class="paramname"> <em>angle</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype"><a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>axis</em></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+converts this quaternion to angle-axis representation
+<p>
+
+<p>References <a class="el" href="PxMath_8h-source.html#l00107">PxAbs()</a>, <a class="el" href="PxMath_8h-source.html#l00276">PxAtan2()</a>, <a class="el" href="PxMath_8h-source.html#l00058">PxPi</a>, and <a class="el" href="PxMath_8h-source.html#l00156">PxRecipSqrt()</a>.</p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="84fb33d995ed4e6a26ac3f22523f0b54"></a><!-- doxytag: member="PxQuat::w" ref="84fb33d995ed4e6a26ac3f22523f0b54" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">float <a class="el" href="classPxQuat.html#84fb33d995ed4e6a26ac3f22523f0b54">PxQuat::w</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxQuat_8h-source.html#l00207">dot()</a>, <a class="el" href="PxQuat_8h-source.html#l00366">operator*()</a>, <a class="el" href="PxQuat_8h-source.html#l00324">operator*=()</a>, <a class="el" href="PxQuat_8h-source.html#l00373">operator+()</a>, <a class="el" href="PxQuat_8h-source.html#l00338">operator+=()</a>, <a class="el" href="PxQuat_8h-source.html#l00384">operator-()</a>, <a class="el" href="PxQuat_8h-source.html#l00347">operator-=()</a>, <a class="el" href="PxQuat_8h-source.html#l00315">operator=()</a>, <a class="el" href="PxQuat_8h-source.html#l00151">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00132">PxMat33::PxMat33()</a>, and <a class="el" href="PxMat44_8h-source.html#l00109">PxMat44::PxMat44()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="c7275be0f2d9162cff34b2d43f2ab179"></a><!-- doxytag: member="PxQuat::x" ref="c7275be0f2d9162cff34b2d43f2ab179" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">float <a class="el" href="classPxQuat.html#c7275be0f2d9162cff34b2d43f2ab179">PxQuat::x</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+the quaternion elements
+<p>Referenced by <a class="el" href="PxQuat_8h-source.html#l00207">dot()</a>, <a class="el" href="PxQuat_8h-source.html#l00366">operator*()</a>, <a class="el" href="PxQuat_8h-source.html#l00324">operator*=()</a>, <a class="el" href="PxQuat_8h-source.html#l00373">operator+()</a>, <a class="el" href="PxQuat_8h-source.html#l00338">operator+=()</a>, <a class="el" href="PxQuat_8h-source.html#l00384">operator-()</a>, <a class="el" href="PxQuat_8h-source.html#l00347">operator-=()</a>, <a class="el" href="PxQuat_8h-source.html#l00315">operator=()</a>, <a class="el" href="PxQuat_8h-source.html#l00151">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00132">PxMat33::PxMat33()</a>, and <a class="el" href="PxMat44_8h-source.html#l00109">PxMat44::PxMat44()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="0988cef7bc3fbdcd8cf37974c5edd611"></a><!-- doxytag: member="PxQuat::y" ref="0988cef7bc3fbdcd8cf37974c5edd611" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">float <a class="el" href="classPxQuat.html#0988cef7bc3fbdcd8cf37974c5edd611">PxQuat::y</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxQuat_8h-source.html#l00207">dot()</a>, <a class="el" href="PxQuat_8h-source.html#l00366">operator*()</a>, <a class="el" href="PxQuat_8h-source.html#l00324">operator*=()</a>, <a class="el" href="PxQuat_8h-source.html#l00373">operator+()</a>, <a class="el" href="PxQuat_8h-source.html#l00338">operator+=()</a>, <a class="el" href="PxQuat_8h-source.html#l00384">operator-()</a>, <a class="el" href="PxQuat_8h-source.html#l00347">operator-=()</a>, <a class="el" href="PxQuat_8h-source.html#l00315">operator=()</a>, <a class="el" href="PxQuat_8h-source.html#l00151">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00132">PxMat33::PxMat33()</a>, and <a class="el" href="PxMat44_8h-source.html#l00109">PxMat44::PxMat44()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="6773bfd82393a8dde22ddef5f0900d06"></a><!-- doxytag: member="PxQuat::z" ref="6773bfd82393a8dde22ddef5f0900d06" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">float <a class="el" href="classPxQuat.html#6773bfd82393a8dde22ddef5f0900d06">PxQuat::z</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxQuat_8h-source.html#l00207">dot()</a>, <a class="el" href="PxQuat_8h-source.html#l00366">operator*()</a>, <a class="el" href="PxQuat_8h-source.html#l00324">operator*=()</a>, <a class="el" href="PxQuat_8h-source.html#l00373">operator+()</a>, <a class="el" href="PxQuat_8h-source.html#l00338">operator+=()</a>, <a class="el" href="PxQuat_8h-source.html#l00384">operator-()</a>, <a class="el" href="PxQuat_8h-source.html#l00347">operator-=()</a>, <a class="el" href="PxQuat_8h-source.html#l00315">operator=()</a>, <a class="el" href="PxQuat_8h-source.html#l00151">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00132">PxMat33::PxMat33()</a>, and <a class="el" href="PxMat44_8h-source.html#l00109">PxMat44::PxMat44()</a>.</p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following files:<ul>
+<li><a class="el" href="PxQuat_8h-source.html">PxQuat.h</a><li><a class="el" href="PxMat33_8h-source.html">PxMat33.h</a></ul>
+</div>
+
+<hr style="width: 100%; height: 2px;"><br>
+Copyright &copy; 2008-2016 NVIDIA Corporation, 2701 San Tomas Expressway, Santa Clara, CA 95050 U.S.A. All rights reserved. <a href="http://www.nvidia.com ">www.nvidia.com</a>
+</body>
+</html>