aboutsummaryrefslogtreecommitdiff
path: root/PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html
diff options
context:
space:
mode:
Diffstat (limited to 'PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html')
-rw-r--r--PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html1006
1 files changed, 1006 insertions, 0 deletions
diff --git a/PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html b/PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html
new file mode 100644
index 00000000..12fb21e8
--- /dev/null
+++ b/PhysX_3.4/Documentation/PhysXAPI/files/classPxMat33.html
@@ -0,0 +1,1006 @@
+<html>
+ <head>
+ <title>NVIDIA(R) PhysX(R) SDK 3.4 API Reference: PxMat33 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>PxMat33 Class Reference<br>
+<small>
+[<a class="el" href="group__foundation.html">Foundation</a>]</small>
+</h1><!-- doxytag: class="PxMat33" -->3x3 matrix class
+<a href="#_details">More...</a>
+<p>
+<code>#include &lt;<a class="el" href="PxMat33_8h-source.html">PxMat33.h</a>&gt;</code>
+<p>
+<div class="dynheader">
+Collaboration diagram for PxMat33:</div>
+<div class="dynsection">
+<p><center><img src="classPxMat33__coll__graph.png" border="0" usemap="#PxMat33__coll__map" alt="Collaboration graph"></center>
+<map name="PxMat33__coll__map">
+<area shape="rect" href="classPxVec3.html" title="3 Element vector class." alt="PxVec3" coords="11,16,64,37"></map>
+<center><font size="2">[<a target="top" href="graph_legend.html">legend</a>]</font></center></div>
+
+<p>
+<a href="classPxMat33-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="classPxMat33.html#20e5403af0f03ef612f64af16ddee6ce">PxMat33</a> ()</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor. <a href="#20e5403af0f03ef612f64af16ddee6ce"></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="classPxMat33.html#dfcaf1c5e22009651cd588a4d4944bb7">PxMat33</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="#dfcaf1c5e22009651cd588a4d4944bb7"></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="classPxMat33.html#b670e3f9978de23e3765680bcf90aefb">PxMat33</a> (<a class="el" href="group__foundation.html#gc10bd69c94c165a52f6de39678ef9d4c">PxZERO</a> r)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">zero constructor <a href="#b670e3f9978de23e3765680bcf90aefb"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#3264dcb23397993b4a861b9e4ddf55ff">PxMat33</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;col0, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;col1, const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;col2)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct from three base vectors. <a href="#3264dcb23397993b4a861b9e4ddf55ff"></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="classPxMat33.html#92525fe88727f40493acfd0857680fc4">PxMat33</a> (float r)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">constructor from a scalar, which generates a multiple of the identity matrix <a href="#92525fe88727f40493acfd0857680fc4"></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="classPxMat33.html#73231a8d10a61fe85c6a3b2fab81a7f1">PxMat33</a> (float values[])</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct from float[9]. <a href="#73231a8d10a61fe85c6a3b2fab81a7f1"></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="classPxMat33.html#62d174ae93bfe40e6637423b37a7be3f">PxMat33</a> (const <a class="el" href="classPxQuat.html">PxQuat</a> &amp;q)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct from a quaternion. <a href="#62d174ae93bfe40e6637423b37a7be3f"></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="classPxMat33.html#fb87a7690460b3cbaa8823a1a4a96531">PxMat33</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor. <a href="#fb87a7690460b3cbaa8823a1a4a96531"></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="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#dcd8ef696b2539be02bc61bcd61dcbc4">operator=</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment operator. <a href="#dcd8ef696b2539be02bc61bcd61dcbc4"></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="classPxMat33.html#2cbc18ab05436d939dfcd42502d2a159">operator==</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;m) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">returns true if the two matrices are exactly equal <a href="#2cbc18ab05436d939dfcd42502d2a159"></a><br></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="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#4ac2e5e46952e91a18126a5de02d2697">getTranspose</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get transposed matrix. <a href="#4ac2e5e46952e91a18126a5de02d2697"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#43f0579a5d59e0dba2693e3e9d980d00">getInverse</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the real inverse. <a href="#43f0579a5d59e0dba2693e3e9d980d00"></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="classPxMat33.html#3222f01a0b2ebdd8257a6d5ef00939f2">getDeterminant</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get determinant. <a href="#3222f01a0b2ebdd8257a6d5ef00939f2"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#c1ea3b5421f0995ccae9a12326d1dc64">operator-</a> () const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary minus. <a href="#c1ea3b5421f0995ccae9a12326d1dc64"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#83cc74145029b7e684ff43aa80372263">operator+</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add. <a href="#83cc74145029b7e684ff43aa80372263"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#1de9919f3cf194f240f8486a92827a9a">operator-</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract. <a href="#1de9919f3cf194f240f8486a92827a9a"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#dbd53b072a43157ed0d34b85cdfc6236">operator*</a> (float scalar) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Scalar multiplication. <a href="#dbd53b072a43157ed0d34b85cdfc6236"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#de5cf01130838a9025873ffd0d378dda">operator*</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;vec) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix vector multiplication (returns 'this-&gt;transform(vec)'). <a href="#de5cf01130838a9025873ffd0d378dda"></a><br></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="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#070bcd66d995493569a0b1cbe5594502">operator*</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix multiplication. <a href="#070bcd66d995493569a0b1cbe5594502"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+<a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#89aba25369f97b0e27eb759e74e7d02e">operator+=</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equals-add. <a href="#89aba25369f97b0e27eb759e74e7d02e"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+<a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#ac22851412f41cb0e3522eb3d18cc5ee">operator-=</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equals-sub. <a href="#ac22851412f41cb0e3522eb3d18cc5ee"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+<a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#d1e0061d404caf3c1da715b17fca97e4">operator*=</a> (float scalar)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equals scalar multiplication. <a href="#d1e0061d404caf3c1da715b17fca97e4"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+<a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#6366803e747d534cf0c920658d86ff94">operator*=</a> (const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;other)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Equals matrix multiplication. <a href="#6366803e747d534cf0c920658d86ff94"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_DEPRECATED PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#7aec56f969ff61f5ad2dd0ad6c990ffe">operator()</a> (unsigned int row, unsigned int col) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Element access, mathematical way! <a href="#7aec56f969ff61f5ad2dd0ad6c990ffe"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_DEPRECATED PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE float &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#c2adb5d01b20bcdaed5fb418b97fe170">operator()</a> (unsigned int row, unsigned int col)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Element access, mathematical way! <a href="#c2adb5d01b20bcdaed5fb418b97fe170"></a><br></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="classPxMat33.html#1813146e8186671dc46451d7d93cc84c">transform</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;other) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transform vector by matrix, equal to v' = M*v. <a href="#1813146e8186671dc46451d7d93cc84c"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE PX_INLINE <br class="typebreak">
+const <a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#49cf642f7adedebd6282ad46cec50d4f">transformTranspose</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;other) const </td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transform vector by matrix transpose, v' = M^t*v. <a href="#49cf642f7adedebd6282ad46cec50d4f"></a><br></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE const float *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#76d4aca67bb52c6b65f0384ac360364a">front</a> () const </td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_DEPRECATED PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#4c6d4185771a0beda1f26f87a12ba9e1">operator[]</a> (unsigned int num)</td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_DEPRECATED PX_CUDA_CALLABLE <br class="typebreak">
+PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#d1fb381de010cc5d7a6c874432dbb24f">operator[]</a> (unsigned int num) const </td></tr>
+
+<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top">PX_CUDA_CALLABLE static <br class="typebreak">
+PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#e7052afa072d3c45c1f570a6a794c6a5">createDiagonal</a> (const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;d)</td></tr>
+
+<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct from diagonal, off-diagonals are zero. <a href="#e7052afa072d3c45c1f570a6a794c6a5"></a><br></td></tr>
+<tr><td colspan="2"><br><h2>Public Attributes</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#89d12d4e50ffc5ef8e480bdd3dadb78a">column0</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#62f190479e12e7b9ec5cf831b23c95e9">column1</a></td></tr>
+
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classPxVec3.html">PxVec3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#9af2a3d4f9cca979c3e46a6406de6957">column2</a></td></tr>
+
+<tr><td colspan="2"><br><h2>Friends</h2></td></tr>
+<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classPxMat33.html">PxMat33</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classPxMat33.html#e7cb54ab21d0e3d0dc2974560a77e27a">operator*</a> (float, const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;)</td></tr>
+
+</table>
+<hr><a name="_details"></a><h2>Detailed Description</h2>
+3x3 matrix class
+<p>
+Some clarifications, as there have been much confusion about matrix formats etc in the past.<p>
+Short:<ul>
+<li>Matrix have base vectors in columns (vectors are column matrices, 3x1 matrices).</li><li>Matrix is physically stored in column major format</li><li>Matrices are concaternated from left</li></ul>
+<p>
+Long: Given three base vectors a, b and c the matrix is stored as<p>
+|a.x b.x c.x| |a.y b.y c.y| |a.z b.z c.z|<p>
+Vectors are treated as columns, so the vector v is<p>
+|x| |y| |z|<p>
+And matrices are applied _before_ the vector (pre-multiplication) v' = M*v<p>
+|x'| |a.x b.x c.x| |x| |a.x*x + b.x*y + c.x*z| |y'| = |a.y b.y c.y| * |y| = |a.y*x + b.y*y + c.y*z| |z'| |a.z b.z c.z| |z| |a.z*x + b.z*y + c.z*z|<p>
+Physical storage and indexing: To be compatible with popular 3d rendering APIs (read D3d and OpenGL) the physical indexing is<p>
+|0 3 6| |1 4 7| |2 5 8|<p>
+index = column*3 + row<p>
+which in C++ translates to M[column][row]<p>
+The mathematical indexing is M_row,column and this is what is used for _-notation so _12 is 1st row, second column and operator(row, column)! <hr><h2>Constructor &amp; Destructor Documentation</h2>
+<a class="anchor" name="20e5403af0f03ef612f64af16ddee6ce"></a><!-- doxytag: member="PxMat33::PxMat33" ref="20e5403af0f03ef612f64af16ddee6ce" args="()" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxMat33::PxMat33 </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.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="dfcaf1c5e22009651cd588a4d4944bb7"></a><!-- doxytag: member="PxMat33::PxMat33" ref="dfcaf1c5e22009651cd588a4d4944bb7" args="(PxIDENTITY r)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxMat33::PxMat33 </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="b670e3f9978de23e3765680bcf90aefb"></a><!-- doxytag: member="PxMat33::PxMat33" ref="b670e3f9978de23e3765680bcf90aefb" args="(PxZERO r)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxMat33::PxMat33 </td>
+ <td>(</td>
+ <td class="paramtype"><a class="el" href="group__foundation.html#gc10bd69c94c165a52f6de39678ef9d4c">PxZERO</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>
+zero constructor
+<p>
+
+<p>References <a class="el" href="PxPreprocessor_8h-source.html#l00456">PX_UNUSED()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="3264dcb23397993b4a861b9e4ddf55ff"></a><!-- doxytag: member="PxMat33::PxMat33" ref="3264dcb23397993b4a861b9e4ddf55ff" args="(const PxVec3 &amp;col0, const PxVec3 &amp;col1, const PxVec3 &amp;col2)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PxMat33::PxMat33 </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>col0</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>col1</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>col2</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>
+Construct from three base vectors.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="92525fe88727f40493acfd0857680fc4"></a><!-- doxytag: member="PxMat33::PxMat33" ref="92525fe88727f40493acfd0857680fc4" args="(float r)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxMat33::PxMat33 </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, which generates a multiple of the identity matrix
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="73231a8d10a61fe85c6a3b2fab81a7f1"></a><!-- doxytag: member="PxMat33::PxMat33" ref="73231a8d10a61fe85c6a3b2fab81a7f1" args="(float values[])" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxMat33::PxMat33 </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>values</em>[] </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline, explicit]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Construct from float[9].
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="62d174ae93bfe40e6637423b37a7be3f"></a><!-- doxytag: member="PxMat33::PxMat33" ref="62d174ae93bfe40e6637423b37a7be3f" args="(const PxQuat &amp;q)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE PxMat33::PxMat33 </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, explicit]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Construct from a quaternion.
+<p>
+
+<p>References <a class="el" href="PxQuat_8h-source.html#l00395">PxQuat::w</a>, <a class="el" href="PxQuat_8h-source.html#l00395">PxQuat::x</a>, <a class="el" href="PxQuat_8h-source.html#l00395">PxQuat::y</a>, and <a class="el" href="PxQuat_8h-source.html#l00395">PxQuat::z</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="fb87a7690460b3cbaa8823a1a4a96531"></a><!-- doxytag: member="PxMat33::PxMat33" ref="fb87a7690460b3cbaa8823a1a4a96531" args="(const PxMat33 &amp;other)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE PxMat33::PxMat33 </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Copy constructor.
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Function Documentation</h2>
+<a class="anchor" name="e7052afa072d3c45c1f570a6a794c6a5"></a><!-- doxytag: member="PxMat33::createDiagonal" ref="e7052afa072d3c45c1f570a6a794c6a5" args="(const PxVec3 &amp;d)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE static PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::createDiagonal </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>d</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline, static]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Construct from diagonal, off-diagonals are zero.
+<p>
+
+<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="76d4aca67bb52c6b65f0384ac360364a"></a><!-- doxytag: member="PxMat33::front" ref="76d4aca67bb52c6b65f0384ac360364a" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE const float* PxMat33::front </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="3222f01a0b2ebdd8257a6d5ef00939f2"></a><!-- doxytag: member="PxMat33::getDeterminant" ref="3222f01a0b2ebdd8257a6d5ef00939f2" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE float PxMat33::getDeterminant </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get determinant.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="43f0579a5d59e0dba2693e3e9d980d00"></a><!-- doxytag: member="PxMat33::getInverse" ref="43f0579a5d59e0dba2693e3e9d980d00" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::getInverse </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get the real inverse.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>, <a class="el" href="Px_8h-source.html#l00084">PxIdentity</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="4ac2e5e46952e91a18126a5de02d2697"></a><!-- doxytag: member="PxMat33::getTranspose" ref="4ac2e5e46952e91a18126a5de02d2697" args="() 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="classPxMat33.html">PxMat33</a> PxMat33::getTranspose </td>
+ <td>(</td>
+ <td class="paramname"> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Get transposed matrix.
+<p>
+
+<p>Referenced by <a class="el" href="PxMassProperties_8h-source.html#l00226">PxMassProperties::rotateInertia()</a>, and <a class="el" href="PxMeshScale_8h-source.html#l00130">PxMeshScale::toMat33()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="c2adb5d01b20bcdaed5fb418b97fe170"></a><!-- doxytag: member="PxMat33::operator()" ref="c2adb5d01b20bcdaed5fb418b97fe170" args="(unsigned int row, unsigned int col)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_DEPRECATED PX_CUDA_CALLABLE PX_FORCE_INLINE float&amp; PxMat33::operator() </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>col</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>
+Element access, mathematical way!
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="7aec56f969ff61f5ad2dd0ad6c990ffe"></a><!-- doxytag: member="PxMat33::operator()" ref="7aec56f969ff61f5ad2dd0ad6c990ffe" args="(unsigned int row, unsigned int col) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_DEPRECATED PX_CUDA_CALLABLE PX_FORCE_INLINE float PxMat33::operator() </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>row</em>, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>col</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>
+Element access, mathematical way!
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="070bcd66d995493569a0b1cbe5594502"></a><!-- doxytag: member="PxMat33::operator*" ref="070bcd66d995493569a0b1cbe5594502" args="(const PxMat33 &amp;other) 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="classPxMat33.html">PxMat33</a> PxMat33::operator* </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Matrix multiplication.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="de5cf01130838a9025873ffd0d378dda"></a><!-- doxytag: member="PxMat33::operator*" ref="de5cf01130838a9025873ffd0d378dda" args="(const PxVec3 &amp;vec) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a> PxMat33::operator* </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>vec</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Matrix vector multiplication (returns 'this-&gt;transform(vec)').
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="dbd53b072a43157ed0d34b85cdfc6236"></a><!-- doxytag: member="PxMat33::operator*" ref="dbd53b072a43157ed0d34b85cdfc6236" args="(float scalar) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::operator* </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>scalar</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Scalar multiplication.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="6366803e747d534cf0c920658d86ff94"></a><!-- doxytag: member="PxMat33::operator*=" ref="6366803e747d534cf0c920658d86ff94" args="(const PxMat33 &amp;other)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxMat33.html">PxMat33</a>&amp; PxMat33::operator*= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Equals matrix multiplication.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="d1e0061d404caf3c1da715b17fca97e4"></a><!-- doxytag: member="PxMat33::operator*=" ref="d1e0061d404caf3c1da715b17fca97e4" args="(float scalar)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxMat33.html">PxMat33</a>&amp; PxMat33::operator*= </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname"> <em>scalar</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Equals scalar multiplication.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="83cc74145029b7e684ff43aa80372263"></a><!-- doxytag: member="PxMat33::operator+" ref="83cc74145029b7e684ff43aa80372263" args="(const PxMat33 &amp;other) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::operator+ </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Add.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="89aba25369f97b0e27eb759e74e7d02e"></a><!-- doxytag: member="PxMat33::operator+=" ref="89aba25369f97b0e27eb759e74e7d02e" args="(const PxMat33 &amp;other)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxMat33.html">PxMat33</a>&amp; PxMat33::operator+= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Equals-add.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="1de9919f3cf194f240f8486a92827a9a"></a><!-- doxytag: member="PxMat33::operator&#45;" ref="1de9919f3cf194f240f8486a92827a9a" args="(const PxMat33 &amp;other) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::operator- </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Subtract.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="c1ea3b5421f0995ccae9a12326d1dc64"></a><!-- doxytag: member="PxMat33::operator&#45;" ref="c1ea3b5421f0995ccae9a12326d1dc64" args="() const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxMat33.html">PxMat33</a> PxMat33::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>
+Unary minus.
+<p>
+
+</div>
+</div><p>
+<a class="anchor" name="ac22851412f41cb0e3522eb3d18cc5ee"></a><!-- doxytag: member="PxMat33::operator&#45;=" ref="ac22851412f41cb0e3522eb3d18cc5ee" args="(const PxMat33 &amp;other)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE <a class="el" href="classPxMat33.html">PxMat33</a>&amp; PxMat33::operator-= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td><code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Equals-sub.
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="dcd8ef696b2539be02bc61bcd61dcbc4"></a><!-- doxytag: member="PxMat33::operator=" ref="dcd8ef696b2539be02bc61bcd61dcbc4" args="(const PxMat33 &amp;other)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxMat33.html">PxMat33</a>&amp; PxMat33::operator= </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</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="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="2cbc18ab05436d939dfcd42502d2a159"></a><!-- doxytag: member="PxMat33::operator==" ref="2cbc18ab05436d939dfcd42502d2a159" args="(const PxMat33 &amp;m) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE bool PxMat33::operator== </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>m</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+returns true if the two matrices are exactly equal
+<p>
+
+<p>References <a class="el" href="PxMat33_8h-source.html#l00353">column0</a>, <a class="el" href="PxMat33_8h-source.html#l00353">column1</a>, and <a class="el" href="PxMat33_8h-source.html#l00353">column2</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="d1fb381de010cc5d7a6c874432dbb24f"></a><!-- doxytag: member="PxMat33::operator[]" ref="d1fb381de010cc5d7a6c874432dbb24f" args="(unsigned int num) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_DEPRECATED PX_CUDA_CALLABLE PX_FORCE_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a>&amp; PxMat33::operator[] </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>num</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="4c6d4185771a0beda1f26f87a12ba9e1"></a><!-- doxytag: member="PxMat33::operator[]" ref="4c6d4185771a0beda1f26f87a12ba9e1" args="(unsigned int num)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_DEPRECATED PX_CUDA_CALLABLE PX_FORCE_INLINE <a class="el" href="classPxVec3.html">PxVec3</a>&amp; PxMat33::operator[] </td>
+ <td>(</td>
+ <td class="paramtype">unsigned int&nbsp;</td>
+ <td class="paramname"> <em>num</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="1813146e8186671dc46451d7d93cc84c"></a><!-- doxytag: member="PxMat33::transform" ref="1813146e8186671dc46451d7d93cc84c" args="(const PxVec3 &amp;other) 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> PxMat33::transform </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Transform vector by matrix, equal to v' = M*v.
+<p>
+
+<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>
+
+</div>
+</div><p>
+<a class="anchor" name="49cf642f7adedebd6282ad46cec50d4f"></a><!-- doxytag: member="PxMat33::transformTranspose" ref="49cf642f7adedebd6282ad46cec50d4f" args="(const PxVec3 &amp;other) const " -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname">PX_CUDA_CALLABLE PX_INLINE const <a class="el" href="classPxVec3.html">PxVec3</a> PxMat33::transformTranspose </td>
+ <td>(</td>
+ <td class="paramtype">const <a class="el" href="classPxVec3.html">PxVec3</a> &amp;&nbsp;</td>
+ <td class="paramname"> <em>other</em> </td>
+ <td>&nbsp;)&nbsp;</td>
+ <td> const<code> [inline]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+Transform vector by matrix transpose, v' = M^t*v.
+<p>
+
+</div>
+</div><p>
+<hr><h2>Friends And Related Function Documentation</h2>
+<a class="anchor" name="e7cb54ab21d0e3d0dc2974560a77e27a"></a><!-- doxytag: member="PxMat33::operator*" ref="e7cb54ab21d0e3d0dc2974560a77e27a" args="(float, const PxMat33 &amp;)" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classPxMat33.html">PxMat33</a> operator* </td>
+ <td>(</td>
+ <td class="paramtype">float&nbsp;</td>
+ <td class="paramname">, </td>
+ </tr>
+ <tr>
+ <td class="paramkey"></td>
+ <td></td>
+ <td class="paramtype">const <a class="el" href="classPxMat33.html">PxMat33</a> &amp;&nbsp;</td>
+ <td class="paramname"></td><td>&nbsp;</td>
+ </tr>
+ <tr>
+ <td></td>
+ <td>)</td>
+ <td></td><td></td><td><code> [friend]</code></td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+</div>
+</div><p>
+<hr><h2>Member Data Documentation</h2>
+<a class="anchor" name="89d12d4e50ffc5ef8e480bdd3dadb78a"></a><!-- doxytag: member="PxMat33::column0" ref="89d12d4e50ffc5ef8e480bdd3dadb78a" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classPxVec3.html">PxVec3</a> <a class="el" href="classPxMat33.html#89d12d4e50ffc5ef8e480bdd3dadb78a">PxMat33::column0</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxBounds3_8h-source.html#l00289">PxBounds3::basisExtent()</a>, <a class="el" href="PxMat33_8h-source.html#l00200">getInverse()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00186">PxMassProperties::getMassSpaceInertia()</a>, <a class="el" href="PxMat33_8h-source.html#l00270">operator*()</a>, <a class="el" href="PxMat33_8h-source.html#l00242">operator+()</a>, <a class="el" href="PxMat33_8h-source.html#l00278">operator+=()</a>, <a class="el" href="PxMat33_8h-source.html#l00248">operator-()</a>, <a class="el" href="PxMat33_8h-source.html#l00287">operator-=()</a>, <a class="el" href="PxMat33_8h-source.html#l00167">operator=()</a>, <a class="el" href="PxMat33_8h-source.html#l00184">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00357">PxQuat::PxQuat()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00226">PxMassProperties::rotateInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00245">PxMassProperties::scaleInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00282">PxMassProperties::sum()</a>, <a class="el" href="PxMeshScale_8h-source.html#l00130">PxMeshScale::toMat33()</a>, and <a class="el" href="PxMassProperties_8h-source.html#l00204">PxMassProperties::translateInertia()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="62f190479e12e7b9ec5cf831b23c95e9"></a><!-- doxytag: member="PxMat33::column1" ref="62f190479e12e7b9ec5cf831b23c95e9" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classPxVec3.html">PxVec3</a> <a class="el" href="classPxMat33.html#62f190479e12e7b9ec5cf831b23c95e9">PxMat33::column1</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxBounds3_8h-source.html#l00289">PxBounds3::basisExtent()</a>, <a class="el" href="PxMat33_8h-source.html#l00200">getInverse()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00186">PxMassProperties::getMassSpaceInertia()</a>, <a class="el" href="PxMat33_8h-source.html#l00270">operator*()</a>, <a class="el" href="PxMat33_8h-source.html#l00242">operator+()</a>, <a class="el" href="PxMat33_8h-source.html#l00278">operator+=()</a>, <a class="el" href="PxMat33_8h-source.html#l00248">operator-()</a>, <a class="el" href="PxMat33_8h-source.html#l00287">operator-=()</a>, <a class="el" href="PxMat33_8h-source.html#l00167">operator=()</a>, <a class="el" href="PxMat33_8h-source.html#l00184">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00357">PxQuat::PxQuat()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00226">PxMassProperties::rotateInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00245">PxMassProperties::scaleInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00282">PxMassProperties::sum()</a>, <a class="el" href="PxMeshScale_8h-source.html#l00130">PxMeshScale::toMat33()</a>, and <a class="el" href="PxMassProperties_8h-source.html#l00204">PxMassProperties::translateInertia()</a>.</p>
+
+</div>
+</div><p>
+<a class="anchor" name="9af2a3d4f9cca979c3e46a6406de6957"></a><!-- doxytag: member="PxMat33::column2" ref="9af2a3d4f9cca979c3e46a6406de6957" args="" -->
+<div class="memitem">
+<div class="memproto">
+ <table class="memname">
+ <tr>
+ <td class="memname"><a class="el" href="classPxVec3.html">PxVec3</a> <a class="el" href="classPxMat33.html#9af2a3d4f9cca979c3e46a6406de6957">PxMat33::column2</a> </td>
+ </tr>
+ </table>
+</div>
+<div class="memdoc">
+
+<p>
+
+<p>Referenced by <a class="el" href="PxBounds3_8h-source.html#l00289">PxBounds3::basisExtent()</a>, <a class="el" href="PxMat33_8h-source.html#l00200">getInverse()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00186">PxMassProperties::getMassSpaceInertia()</a>, <a class="el" href="PxMat33_8h-source.html#l00270">operator*()</a>, <a class="el" href="PxMat33_8h-source.html#l00242">operator+()</a>, <a class="el" href="PxMat33_8h-source.html#l00278">operator+=()</a>, <a class="el" href="PxMat33_8h-source.html#l00248">operator-()</a>, <a class="el" href="PxMat33_8h-source.html#l00287">operator-=()</a>, <a class="el" href="PxMat33_8h-source.html#l00167">operator=()</a>, <a class="el" href="PxMat33_8h-source.html#l00184">operator==()</a>, <a class="el" href="PxMat33_8h-source.html#l00357">PxQuat::PxQuat()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00226">PxMassProperties::rotateInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00245">PxMassProperties::scaleInertia()</a>, <a class="el" href="PxMassProperties_8h-source.html#l00282">PxMassProperties::sum()</a>, <a class="el" href="PxMeshScale_8h-source.html#l00130">PxMeshScale::toMat33()</a>, and <a class="el" href="PxMassProperties_8h-source.html#l00204">PxMassProperties::translateInertia()</a>.</p>
+
+</div>
+</div><p>
+<hr>The documentation for this class was generated from the following file:<ul>
+<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>