Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > bad97183153701b09df5fae1052b1c30 > files > 737

crystalspace-doc-1.2.1-5mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Crystal Space 1.2.1: csMatrix3 Class Reference (Crystal Space 1.2.1 Public API Reference)</title>
<link href="tabs.css" rel="stylesheet" type="text/css">
<link href="doxygen.css" rel="stylesheet" type="text/css">
</head><body>
<table border="0" cellpadding="0" cellspacing="0" width="100%" class="head">
 <tr height="59">
  <td class="head" width="202" valign="bottom" style="padding-left:0;"><a href="http://www.crystalspace3d.org/"><img src="csblur.png" width="236" height="59" alt="CrystalSpace" border="0"></a></td>
  <td class="head"><h2>Public API Reference</h2></td>
 </tr>
 <tr height="11">
  <td colspan="2" class="headshadow" valign="top" style="padding-left:0;"><img src="csblurb.png" width="236" height="11" alt="" border="0"></td>
 </tr>
</table>
<div class="content">
<!-- Generated by Doxygen 1.5.3 -->
<div class="tabs">
  <ul>
    <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
    <li><a href="modules.html"><span>Modules</span></a></li>
    <li><a href="namespaces.html"><span>Namespaces</span></a></li>
    <li class="current"><a href="classes.html"><span>Classes</span></a></li>
    <li><a href="files.html"><span>Files</span></a></li>
    <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  </ul>
</div>
<div class="tabs">
  <ul>
    <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
    <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
    <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
    <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  </ul>
</div>
<h1>csMatrix3 Class Reference<br>
<small>
[<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small>
</h1><!-- doxytag: class="csMatrix3" -->A 3x3 matrix.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="matrix3_8h-source.html">csgeom/matrix3.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for csMatrix3:</div>
<div class="dynsection">
<p><center><img src="classcsMatrix3__inherit__graph.png" border="0" usemap="#csMatrix3__inherit__map" alt="Inheritance graph"></center>
<map name="csMatrix3__inherit__map">
<area shape="rect" href="classcsXRotMatrix3.html" title="An instance of csMatrix3 that is initialized as a rotation about X." alt="" coords="145,5,260,32"><area shape="rect" href="classcsXScaleMatrix3.html" title="An instance of csMatrix3 that is initialized to scale the X dimension." alt="" coords="140,56,265,83"><area shape="rect" href="classcsYRotMatrix3.html" title="An instance of csMatrix3 that is initialized as a rotation about Y." alt="" coords="145,107,260,133"><area shape="rect" href="classcsYScaleMatrix3.html" title="An instance of csMatrix3 that is initialized to scale the Y dimension." alt="" coords="139,157,267,184"><area shape="rect" href="classcsZRotMatrix3.html" title="An instance of csMatrix3 that is initialized as a rotation about Z." alt="" coords="145,208,260,235"><area shape="rect" href="classcsZScaleMatrix3.html" title="An instance of csMatrix3 that is initialized to scale the Z dimension." alt="" coords="140,259,265,285"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="classcsMatrix3-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"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#42bbd5a0bb15545d1597a3e47ce9a382">Col1</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the first column of this matrix as a vector.  <a href="#42bbd5a0bb15545d1597a3e47ce9a382"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#7929b4c55a4c45dec318ab44da480c6c">Col2</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the second column of this matrix as a vector.  <a href="#7929b4c55a4c45dec318ab44da480c6c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#4b648cf40fa5c8d68bd1e748a7b2685a">Col3</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the third column of this matrix as a vector.  <a href="#4b648cf40fa5c8d68bd1e748a7b2685a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#548385cc8aaff7b5db19cea5bb395507">csMatrix3</a> (const <a class="el" href="classcsQuaternion.html">csQuaternion</a> &amp;quat)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a matrix with a quaternion.  <a href="#548385cc8aaff7b5db19cea5bb395507"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#607a8d83f2f64ca1b3c1e3e9a83434b3">csMatrix3</a> (float x, float y, float z, float angle)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a matrix from axis-angle specifier.  <a href="#607a8d83f2f64ca1b3c1e3e9a83434b3"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#31ff6d7d6c1b44e7683070c6268f8dac">csMatrix3</a> (<a class="el" href="classcsMatrix3.html">csMatrix3</a> const &amp;o)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Copy constructor.  <a href="#31ff6d7d6c1b44e7683070c6268f8dac"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#51401dc3d8a370c4c89c671cf4a696f2">csMatrix3</a> (float am11, float am12, float am13, float am21, float am22, float am23, float am31, float am32, float am33)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a matrix and initialize it.  <a href="#51401dc3d8a370c4c89c671cf4a696f2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#3ec397749c3898a54479d7779fcc3d22">csMatrix3</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a matrix, initialized to be the identity.  <a href="#3ec397749c3898a54479d7779fcc3d22"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#6fff68877b42606c830e30b924c4d211">Determinant</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Compute the determinant of this matrix.  <a href="#6fff68877b42606c830e30b924c4d211"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#c030fcde1006e30203943b62279478c7">GetInverse</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the inverse of this matrix.  <a href="#c030fcde1006e30203943b62279478c7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#c7b62f445a1a6f388c16874d954d595f">GetTranspose</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the transpose of this matrix.  <a href="#c7b62f445a1a6f388c16874d954d595f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#0acfb319aa4feb890e5f1ca1d078d93c">Identity</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set this matrix to the identity matrix.  <a href="#0acfb319aa4feb890e5f1ca1d078d93c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#55fde128b92e1655519ace4cde07648d">Invert</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Invert this matrix.  <a href="#55fde128b92e1655519ace4cde07648d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#82cdde0965f44eadfc8be4df7d8b5eee">IsIdentity</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if the matrix is identity.  <a href="#82cdde0965f44eadfc8be4df7d8b5eee"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#cace3bfbb424b426075850328b8ff61a">operator *=</a> (float)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply this matrix with a scalar.  <a href="#cace3bfbb424b426075850328b8ff61a"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#22738b3344858674833b1f5edefd079b">operator *=</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply another matrix with this matrix.  <a href="#22738b3344858674833b1f5edefd079b"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#9064c6c431d6d3b6f6097e35f45d957c">operator+</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary + operator.  <a href="#9064c6c431d6d3b6f6097e35f45d957c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#7202afc8c3110a48a7567574d469091d">operator+=</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add another matrix to this matrix.  <a href="#7202afc8c3110a48a7567574d469091d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#3cd848598b321f7ba81dcc9556e38343">operator-</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Unary - operator.  <a href="#3cd848598b321f7ba81dcc9556e38343"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#22d938fe4cab0669b2b8bf8ac6d00229">operator-=</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract another matrix from this matrix.  <a href="#22d938fe4cab0669b2b8bf8ac6d00229"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#4d4d527e6be208179ab25b898adaaf14">operator/=</a> (float)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide this matrix by a scalar.  <a href="#4d4d527e6be208179ab25b898adaaf14"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#fa61705d17b5169d4456f94fdc0d8fd9">operator=</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;o)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assign another matrix to this one.  <a href="#fa61705d17b5169d4456f94fdc0d8fd9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#841bb7ccfb239c7766c4ce90075e5051">Row1</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the first row of this matrix as a vector.  <a href="#841bb7ccfb239c7766c4ce90075e5051"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#37412d02aab4bdca56afe69eab32c052">Row2</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the second row of this matrix as a vector.  <a href="#37412d02aab4bdca56afe69eab32c052"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#0b959a176543ec1f13d113f114257034">Row3</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the third row of this matrix as a vector.  <a href="#0b959a176543ec1f13d113f114257034"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#f8ed17b209fab29c2d968bd3d7b8a284">Set</a> (const <a class="el" href="classcsQuaternion.html">csQuaternion</a> &amp;)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize matrix with a quaternion.  <a href="#f8ed17b209fab29c2d968bd3d7b8a284"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="091d7466110d46c28b05e3028e41d828"></a><!-- doxytag: member="csMatrix3::Set" ref="091d7466110d46c28b05e3028e41d828" args="(csMatrix3 const &amp;o)" -->
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#091d7466110d46c28b05e3028e41d828">Set</a> (<a class="el" href="classcsMatrix3.html">csMatrix3</a> const &amp;o)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#efa14975924008b8f1e0dff9618fafa4">Set</a> (float o11, float o12, float o13, float o21, float o22, float o23, float o31, float o32, float o33)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set matrix values.  <a href="#efa14975924008b8f1e0dff9618fafa4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#8d621bdf1d5cdada7b50c24324ba5977">Transpose</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transpose this matrix.  <a href="#8d621bdf1d5cdada7b50c24324ba5977"></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="anchor" name="7abb8769eb9f1110a860dd1cbe1ebc83"></a><!-- doxytag: member="csMatrix3::m11" ref="7abb8769eb9f1110a860dd1cbe1ebc83" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#7abb8769eb9f1110a860dd1cbe1ebc83">m11</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="03f36748a74f2452374ee7aa33a047c1"></a><!-- doxytag: member="csMatrix3::m12" ref="03f36748a74f2452374ee7aa33a047c1" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#03f36748a74f2452374ee7aa33a047c1">m12</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6cc4385d82d3f6c6161d7a33324d585a"></a><!-- doxytag: member="csMatrix3::m13" ref="6cc4385d82d3f6c6161d7a33324d585a" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#6cc4385d82d3f6c6161d7a33324d585a">m13</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5e4b3835d5a06ef37011d201f1b3580f"></a><!-- doxytag: member="csMatrix3::m21" ref="5e4b3835d5a06ef37011d201f1b3580f" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#5e4b3835d5a06ef37011d201f1b3580f">m21</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="8263527f4f5327dd8b7c553852356c24"></a><!-- doxytag: member="csMatrix3::m22" ref="8263527f4f5327dd8b7c553852356c24" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#8263527f4f5327dd8b7c553852356c24">m22</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="67476f669601bac648b0b908f9998560"></a><!-- doxytag: member="csMatrix3::m23" ref="67476f669601bac648b0b908f9998560" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#67476f669601bac648b0b908f9998560">m23</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="6466a3ad591b333c46d3bd164c371167"></a><!-- doxytag: member="csMatrix3::m31" ref="6466a3ad591b333c46d3bd164c371167" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#6466a3ad591b333c46d3bd164c371167">m31</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="1c9bd8515840fb4e61ae72ea7af5927c"></a><!-- doxytag: member="csMatrix3::m32" ref="1c9bd8515840fb4e61ae72ea7af5927c" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#1c9bd8515840fb4e61ae72ea7af5927c">m32</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="651ffebc45af74241ec8fe1294a4f6d0"></a><!-- doxytag: member="csMatrix3::m33" ref="651ffebc45af74241ec8fe1294a4f6d0" args="" -->
float&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#651ffebc45af74241ec8fe1294a4f6d0">m33</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="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#8fe3a4ca0f806cc4c984cbe72f7ef4b2">operator *</a> (float f, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a matrix and a scalar.  <a href="#8fe3a4ca0f806cc4c984cbe72f7ef4b2"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#512316b6645cfd822395f6cfe754f249">operator *</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a matrix and a scalar.  <a href="#512316b6645cfd822395f6cfe754f249"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector3.html">csVector3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#ac99b5f7a218b00112f8a0beac726ac6">operator *</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m, const <a class="el" href="classcsVector3.html">csVector3</a> &amp;v)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply a vector by a matrix (transform it).  <a href="#ac99b5f7a218b00112f8a0beac726ac6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#ac3b6f5cfb9bcd31c3674557fc2ffc01">operator *</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m1, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Multiply two matricies.  <a href="#ac3b6f5cfb9bcd31c3674557fc2ffc01"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#6ad89b5e6d2deb08585c51ee77c91665">operator!=</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m1, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two matricies are not equal.  <a href="#6ad89b5e6d2deb08585c51ee77c91665"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#1812f4c5f495c0f8693d4b8ddab90b8d">operator+</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m1, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add two matricies.  <a href="#1812f4c5f495c0f8693d4b8ddab90b8d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#114173e10da80d8f3d27331e529a7d58">operator-</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m1, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Subtract two matricies.  <a href="#114173e10da80d8f3d27331e529a7d58"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#b79793d2fd598218302ce2f5d059dad5">operator/</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Divide a matrix by a scalar.  <a href="#b79793d2fd598218302ce2f5d059dad5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#8ae3db841c7ab66b35b7160152faaa8f">operator&lt;</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m, float f)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if each component of a matrix is less than a small epsilon value.  <a href="#8ae3db841c7ab66b35b7160152faaa8f"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#2569c6a8aa03572650ced4af397326fe">operator==</a> (const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m1, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m2)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Check if two matricies are equal.  <a href="#2569c6a8aa03572650ced4af397326fe"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix3.html#72eb8fb14377b25cc558731610d32e1a">operator&gt;</a> (float f, const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;m)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test if each component of a matrix is greater than a small epsilon value.  <a href="#72eb8fb14377b25cc558731610d32e1a"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
A 3x3 matrix. 
<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00038">38</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="3ec397749c3898a54479d7779fcc3d22"></a><!-- doxytag: member="csMatrix3::csMatrix3" ref="3ec397749c3898a54479d7779fcc3d22" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csMatrix3::csMatrix3           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a matrix, initialized to be the identity. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00047">47</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="51401dc3d8a370c4c89c671cf4a696f2"></a><!-- doxytag: member="csMatrix3::csMatrix3" ref="51401dc3d8a370c4c89c671cf4a696f2" args="(float am11, float am12, float am13, float am21, float am22, float am23, float am31, float am32, float am33)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csMatrix3::csMatrix3           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am11</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am12</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am13</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am21</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am22</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am23</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am31</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am32</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>am33</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a matrix and initialize it. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00054">54</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="31ff6d7d6c1b44e7683070c6268f8dac"></a><!-- doxytag: member="csMatrix3::csMatrix3" ref="31ff6d7d6c1b44e7683070c6268f8dac" args="(csMatrix3 const &amp;o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csMatrix3::csMatrix3           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="classcsMatrix3.html">csMatrix3</a> const &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy constructor. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00063">63</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="607a8d83f2f64ca1b3c1e3e9a83434b3"></a><!-- doxytag: member="csMatrix3::csMatrix3" ref="607a8d83f2f64ca1b3c1e3e9a83434b3" args="(float x, float y, float z, float angle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csMatrix3::csMatrix3           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>z</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>angle</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a matrix from axis-angle specifier. 
<p>

</div>
</div><p>
<a class="anchor" name="548385cc8aaff7b5db19cea5bb395507"></a><!-- doxytag: member="csMatrix3::csMatrix3" ref="548385cc8aaff7b5db19cea5bb395507" args="(const csQuaternion &amp;quat)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">csMatrix3::csMatrix3           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsQuaternion.html">csQuaternion</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>quat</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a matrix with a quaternion. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00069">69</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="42bbd5a0bb15545d1597a3e47ce9a382"></a><!-- doxytag: member="csMatrix3::Col1" ref="42bbd5a0bb15545d1597a3e47ce9a382" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Col1           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the first column of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00081">81</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7929b4c55a4c45dec318ab44da480c6c"></a><!-- doxytag: member="csMatrix3::Col2" ref="7929b4c55a4c45dec318ab44da480c6c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Col2           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the second column of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00084">84</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="4b648cf40fa5c8d68bd1e748a7b2685a"></a><!-- doxytag: member="csMatrix3::Col3" ref="4b648cf40fa5c8d68bd1e748a7b2685a" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Col3           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the third column of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00087">87</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="6fff68877b42606c830e30b924c4d211"></a><!-- doxytag: member="csMatrix3::Determinant" ref="6fff68877b42606c830e30b924c4d211" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float csMatrix3::Determinant           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Compute the determinant of this matrix. 
<p>

</div>
</div><p>
<a class="anchor" name="c030fcde1006e30203943b62279478c7"></a><!-- doxytag: member="csMatrix3::GetInverse" ref="c030fcde1006e30203943b62279478c7" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> csMatrix3::GetInverse           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the inverse of this matrix. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00144">144</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

<p>References <a class="el" href="matrix3_8h-source.html#l00041">m11</a>, <a class="el" href="matrix3_8h-source.html#l00042">m21</a>, and <a class="el" href="matrix3_8h-source.html#l00043">m31</a>.</p>

<p>Referenced by <a class="el" href="transfrm_8h-source.html#l00406">csReversibleTransform::SetO2T()</a>, and <a class="el" href="transfrm_8h-source.html#l00414">csReversibleTransform::SetT2O()</a>.</p>

</div>
</div><p>
<a class="anchor" name="c7b62f445a1a6f388c16874d954d595f"></a><!-- doxytag: member="csMatrix3::GetTranspose" ref="c7b62f445a1a6f388c16874d954d595f" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> csMatrix3::GetTranspose           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the transpose of this matrix. 
<p>

<p>Referenced by <a class="el" href="transfrm_8h-source.html#l00658">csOrthoTransform::SetO2T()</a>, and <a class="el" href="transfrm_8h-source.html#l00666">csOrthoTransform::SetT2O()</a>.</p>

</div>
</div><p>
<a class="anchor" name="0acfb319aa4feb890e5f1ca1d078d93c"></a><!-- doxytag: member="csMatrix3::Identity" ref="0acfb319aa4feb890e5f1ca1d078d93c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csMatrix3::Identity           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set this matrix to the identity matrix. 
<p>

</div>
</div><p>
<a class="anchor" name="55fde128b92e1655519ace4cde07648d"></a><!-- doxytag: member="csMatrix3::Invert" ref="55fde128b92e1655519ace4cde07648d" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csMatrix3::Invert           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Invert this matrix. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00156">156</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="82cdde0965f44eadfc8be4df7d8b5eee"></a><!-- doxytag: member="csMatrix3::IsIdentity" ref="82cdde0965f44eadfc8be4df7d8b5eee" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool csMatrix3::IsIdentity           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if the matrix is identity. 
<p>

</div>
</div><p>
<a class="anchor" name="cace3bfbb424b426075850328b8ff61a"></a><!-- doxytag: member="csMatrix3::operator *=" ref="cace3bfbb424b426075850328b8ff61a" args="(float)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator *=           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply this matrix with a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="22738b3344858674833b1f5edefd079b"></a><!-- doxytag: member="csMatrix3::operator *=" ref="22738b3344858674833b1f5edefd079b" args="(const csMatrix3 &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator *=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply another matrix with this matrix. 
<p>

</div>
</div><p>
<a class="anchor" name="9064c6c431d6d3b6f6097e35f45d957c"></a><!-- doxytag: member="csMatrix3::operator+" ref="9064c6c431d6d3b6f6097e35f45d957c" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> csMatrix3::operator+           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unary + operator. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00128">128</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="7202afc8c3110a48a7567574d469091d"></a><!-- doxytag: member="csMatrix3::operator+=" ref="7202afc8c3110a48a7567574d469091d" args="(const csMatrix3 &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator+=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add another matrix to this matrix. 
<p>

</div>
</div><p>
<a class="anchor" name="3cd848598b321f7ba81dcc9556e38343"></a><!-- doxytag: member="csMatrix3::operator-" ref="3cd848598b321f7ba81dcc9556e38343" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> csMatrix3::operator-           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Unary - operator. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00130">130</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="22d938fe4cab0669b2b8bf8ac6d00229"></a><!-- doxytag: member="csMatrix3::operator-=" ref="22d938fe4cab0669b2b8bf8ac6d00229" args="(const csMatrix3 &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator-=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Subtract another matrix from this matrix. 
<p>

</div>
</div><p>
<a class="anchor" name="4d4d527e6be208179ab25b898adaaf14"></a><!-- doxytag: member="csMatrix3::operator/=" ref="4d4d527e6be208179ab25b898adaaf14" args="(float)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator/=           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Divide this matrix by a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="fa61705d17b5169d4456f94fdc0d8fd9"></a><!-- doxytag: member="csMatrix3::operator=" ref="fa61705d17b5169d4456f94fdc0d8fd9" args="(const csMatrix3 &amp;o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a>&amp; csMatrix3::operator=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>o</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Assign another matrix to this one. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00110">110</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="841bb7ccfb239c7766c4ce90075e5051"></a><!-- doxytag: member="csMatrix3::Row1" ref="841bb7ccfb239c7766c4ce90075e5051" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Row1           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the first row of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00072">72</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="37412d02aab4bdca56afe69eab32c052"></a><!-- doxytag: member="csMatrix3::Row2" ref="37412d02aab4bdca56afe69eab32c052" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Row2           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the second row of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00075">75</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="0b959a176543ec1f13d113f114257034"></a><!-- doxytag: member="csMatrix3::Row3" ref="0b959a176543ec1f13d113f114257034" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> csMatrix3::Row3           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the third row of this matrix as a vector. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00078">78</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="f8ed17b209fab29c2d968bd3d7b8a284"></a><!-- doxytag: member="csMatrix3::Set" ref="f8ed17b209fab29c2d968bd3d7b8a284" args="(const csQuaternion &amp;)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csMatrix3::Set           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsQuaternion.html">csQuaternion</a> &amp;&nbsp;</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Initialize matrix with a quaternion. 
<p>

</div>
</div><p>
<a class="anchor" name="efa14975924008b8f1e0dff9618fafa4"></a><!-- doxytag: member="csMatrix3::Set" ref="efa14975924008b8f1e0dff9618fafa4" args="(float o11, float o12, float o13, float o21, float o22, float o23, float o31, float o32, float o33)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csMatrix3::Set           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o11</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o12</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o13</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o21</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o22</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o23</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o31</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o32</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>o33</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set matrix values. 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00090">90</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="8d621bdf1d5cdada7b50c24324ba5977"></a><!-- doxytag: member="csMatrix3::Transpose" ref="8d621bdf1d5cdada7b50c24324ba5977" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void csMatrix3::Transpose           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td width="100%"></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Transpose this matrix. 
<p>

</div>
</div><p>
<hr><h2>Friends And Related Function Documentation</h2>
<a class="anchor" name="8fe3a4ca0f806cc4c984cbe72f7ef4b2"></a><!-- doxytag: member="csMatrix3::operator *" ref="8fe3a4ca0f806cc4c984cbe72f7ef4b2" args="(float f, const csMatrix3 &amp;m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply a matrix and a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="512316b6645cfd822395f6cfe754f249"></a><!-- doxytag: member="csMatrix3::operator *" ref="512316b6645cfd822395f6cfe754f249" args="(const csMatrix3 &amp;m, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply a matrix and a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="ac99b5f7a218b00112f8a0beac726ac6"></a><!-- doxytag: member="csMatrix3::operator *" ref="ac99b5f7a218b00112f8a0beac726ac6" args="(const csMatrix3 &amp;m, const csVector3 &amp;v)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsVector3.html">csVector3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsVector3.html">csVector3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>v</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply a vector by a matrix (transform it). 
<p>

<p>Definition at line <a class="el" href="matrix3_8h-source.html#l00178">178</a> of file <a class="el" href="matrix3_8h-source.html">matrix3.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="ac3b6f5cfb9bcd31c3674557fc2ffc01"></a><!-- doxytag: member="csMatrix3::operator *" ref="ac3b6f5cfb9bcd31c3674557fc2ffc01" args="(const csMatrix3 &amp;m1, const csMatrix3 &amp;m2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator *           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Multiply two matricies. 
<p>

</div>
</div><p>
<a class="anchor" name="6ad89b5e6d2deb08585c51ee77c91665"></a><!-- doxytag: member="csMatrix3::operator!=" ref="6ad89b5e6d2deb08585c51ee77c91665" args="(const csMatrix3 &amp;m1, const csMatrix3 &amp;m2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator!=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if two matricies are not equal. 
<p>

</div>
</div><p>
<a class="anchor" name="1812f4c5f495c0f8693d4b8ddab90b8d"></a><!-- doxytag: member="csMatrix3::operator+" ref="1812f4c5f495c0f8693d4b8ddab90b8d" args="(const csMatrix3 &amp;m1, const csMatrix3 &amp;m2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator+           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Add two matricies. 
<p>

</div>
</div><p>
<a class="anchor" name="114173e10da80d8f3d27331e529a7d58"></a><!-- doxytag: member="csMatrix3::operator-" ref="114173e10da80d8f3d27331e529a7d58" args="(const csMatrix3 &amp;m1, const csMatrix3 &amp;m2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator-           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Subtract two matricies. 
<p>

</div>
</div><p>
<a class="anchor" name="b79793d2fd598218302ce2f5d059dad5"></a><!-- doxytag: member="csMatrix3::operator/" ref="b79793d2fd598218302ce2f5d059dad5" args="(const csMatrix3 &amp;m, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classcsMatrix3.html">csMatrix3</a> operator/           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Divide a matrix by a scalar. 
<p>

</div>
</div><p>
<a class="anchor" name="8ae3db841c7ab66b35b7160152faaa8f"></a><!-- doxytag: member="csMatrix3::operator&lt;" ref="8ae3db841c7ab66b35b7160152faaa8f" args="(const csMatrix3 &amp;m, float f)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator&lt;           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if each component of a matrix is less than a small epsilon value. 
<p>

</div>
</div><p>
<a class="anchor" name="2569c6a8aa03572650ced4af397326fe"></a><!-- doxytag: member="csMatrix3::operator==" ref="2569c6a8aa03572650ced4af397326fe" args="(const csMatrix3 &amp;m1, const csMatrix3 &amp;m2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator==           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m2</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Check if two matricies are equal. 
<p>

</div>
</div><p>
<a class="anchor" name="72eb8fb14377b25cc558731610d32e1a"></a><!-- doxytag: member="csMatrix3::operator&gt;" ref="72eb8fb14377b25cc558731610d32e1a" args="(float f, const csMatrix3 &amp;m)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">bool operator&gt;           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classcsMatrix3.html">csMatrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>m</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td width="100%"><code> [friend]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Test if each component of a matrix is greater than a small epsilon value. 
<p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>csgeom/<a class="el" href="matrix3_8h-source.html">matrix3.h</a></ul>
<hr size="1"><address><small>Generated for Crystal Space 1.2.1 by 
<a href="http://www.doxygen.org/index.html">doxygen</a> 1.5.3 
</small></address> </div></body> </html>