<!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: csMatrix2 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 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 Pages</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="classes.html"><span>Alphabetical List</span></a></li> <li><a href="annotated.html"><span>Class List</span></a></li> <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li> <li><a href="functions.html"><span>Class Members</span></a></li> </ul> </div> <h1>csMatrix2 Class Reference<br> <small> [<a class="el" href="group__geom__utils.html">Geometry utilities</a>]</small> </h1><!-- doxytag: class="csMatrix2" -->A 2x2 matrix. <a href="#_details">More...</a> <p> <code>#include <<a class="el" href="matrix2_8h-source.html">csgeom/matrix2.h</a>></code> <p> <p> <a href="classcsMatrix2-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="classcsVector2.html">csVector2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#981025e528de1b4793e7147ddefa7a5a">Col1</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the first column of this matrix as a vector. <a href="#981025e528de1b4793e7147ddefa7a5a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#e5aa074ea9dc5c688774db8d5bcaab54">Col2</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the second column of this matrix as a vector. <a href="#e5aa074ea9dc5c688774db8d5bcaab54"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#ddf54e79f8c5dce564821bc9c4d089f3">csMatrix2</a> (float <a class="el" href="classcsMatrix2.html#919f87431a628919787780c5266c9c5b">m11</a>, float <a class="el" href="classcsMatrix2.html#04510180f5050b2ae7d5e4f5ba8cfcae">m12</a>, float <a class="el" href="classcsMatrix2.html#3a67e49e38c9950a8a993b8ec2ff7af9">m21</a>, float <a class="el" href="classcsMatrix2.html#5164d3382c143082bfb2bc8c22ec69ee">m22</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a matrix and initialize it. <a href="#ddf54e79f8c5dce564821bc9c4d089f3"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#e0283d7331929a8d381c577666652ed2">csMatrix2</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Construct a matrix, initialized to be the identity. <a href="#e0283d7331929a8d381c577666652ed2"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#e72e07db9bc688ae5f2268dc8fb35924">Determinant</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Compute the determinant of this matrix. <a href="#e72e07db9bc688ae5f2268dc8fb35924"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#de833b5d08b2a3673fbe0818d4685880">GetInverse</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the inverse of this matrix. <a href="#de833b5d08b2a3673fbe0818d4685880"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#8afc2bfd7c2459ac1a7423d84d69950a">GetTranspose</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return the transpose of this matrix. <a href="#8afc2bfd7c2459ac1a7423d84d69950a"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#383152a3a409cc51a0c72a0c518bce56">Identity</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set this matrix to the identity matrix. <a href="#383152a3a409cc51a0c72a0c518bce56"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#53beca9fc7f3a3e64a324103a1292acc">Invert</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Invert this matrix. <a href="#53beca9fc7f3a3e64a324103a1292acc"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#d05de42e2721c2d7895ca6b5815272ea">operator *=</a> (float s)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply this matrix with a scalar. <a href="#d05de42e2721c2d7895ca6b5815272ea"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#6d7bb624c831dc257fe0b35053246c70">operator *=</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply another matrix with this matrix. <a href="#6d7bb624c831dc257fe0b35053246c70"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#f6e5453f66f504c6a5d627acb5e4a5a4">operator+</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unary + operator. <a href="#f6e5453f66f504c6a5d627acb5e4a5a4"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#b0607251d8d3f4092bef6c9ce6bf7dab">operator+=</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add another matrix to this matrix. <a href="#b0607251d8d3f4092bef6c9ce6bf7dab"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#c395159a67b9e9f79d7cd36a2096e9f4">operator-</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Unary - operator. <a href="#c395159a67b9e9f79d7cd36a2096e9f4"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#cd788b1f8f6cf0024a6fbaef96293687">operator-=</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Subtract another matrix from this matrix. <a href="#cd788b1f8f6cf0024a6fbaef96293687"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#304f1c12affc5db9f1de8bb26a393f8c">operator/=</a> (float s)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Divide this matrix by a scalar. <a href="#304f1c12affc5db9f1de8bb26a393f8c"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#a2283a512a137bc814b40447f9b0d464">Row1</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the first row of this matrix as a vector. <a href="#a2283a512a137bc814b40447f9b0d464"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#8ffed2d9047b26f7119413484a33ecc7">Row2</a> () const </td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Get the second row of this matrix as a vector. <a href="#8ffed2d9047b26f7119413484a33ecc7"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#259af777b294c50d4f8a4a50a9e6bf28">Set</a> (float <a class="el" href="classcsMatrix2.html#919f87431a628919787780c5266c9c5b">m11</a>, float <a class="el" href="classcsMatrix2.html#04510180f5050b2ae7d5e4f5ba8cfcae">m12</a>, float <a class="el" href="classcsMatrix2.html#3a67e49e38c9950a8a993b8ec2ff7af9">m21</a>, float <a class="el" href="classcsMatrix2.html#5164d3382c143082bfb2bc8c22ec69ee">m22</a>)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set matrix values. <a href="#259af777b294c50d4f8a4a50a9e6bf28"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#295a1ab01510caa8171206ecc801f2e4">Transpose</a> ()</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Transpose this matrix. <a href="#295a1ab01510caa8171206ecc801f2e4"></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="919f87431a628919787780c5266c9c5b"></a><!-- doxytag: member="csMatrix2::m11" ref="919f87431a628919787780c5266c9c5b" args="" --> float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#919f87431a628919787780c5266c9c5b">m11</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="04510180f5050b2ae7d5e4f5ba8cfcae"></a><!-- doxytag: member="csMatrix2::m12" ref="04510180f5050b2ae7d5e4f5ba8cfcae" args="" --> float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#04510180f5050b2ae7d5e4f5ba8cfcae">m12</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="3a67e49e38c9950a8a993b8ec2ff7af9"></a><!-- doxytag: member="csMatrix2::m21" ref="3a67e49e38c9950a8a993b8ec2ff7af9" args="" --> float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#3a67e49e38c9950a8a993b8ec2ff7af9">m21</a></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="5164d3382c143082bfb2bc8c22ec69ee"></a><!-- doxytag: member="csMatrix2::m22" ref="5164d3382c143082bfb2bc8c22ec69ee" args="" --> float </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#5164d3382c143082bfb2bc8c22ec69ee">m22</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="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#a437593720aae13b78fea7e23f167764">operator *</a> (float f, const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply a matrix and a scalar. <a href="#a437593720aae13b78fea7e23f167764"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#5f3b405727778a6d4eabc89e23e6ba94">operator *</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m, float f)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply a matrix and a scalar. <a href="#5f3b405727778a6d4eabc89e23e6ba94"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsVector2.html">csVector2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#eff079a7bb536262ce00798bf6f4d336">operator *</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m, const <a class="el" href="classcsVector2.html">csVector2</a> &v)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply a vector by a matrix (transform it). <a href="#eff079a7bb536262ce00798bf6f4d336"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#5068ee8c52336df3378ba9fd907f711b">operator *</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m1, const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m2)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Multiply two matricies. <a href="#5068ee8c52336df3378ba9fd907f711b"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#307d0b0b99ce9588f9e68ba0649da908">operator+</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m1, const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m2)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Add two matricies. <a href="#307d0b0b99ce9588f9e68ba0649da908"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#4e6590e87d2434d3d553be5aa30d5a97">operator-</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m1, const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m2)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Subtract two matricies. <a href="#4e6590e87d2434d3d553be5aa30d5a97"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classcsMatrix2.html">csMatrix2</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classcsMatrix2.html#70e6e6ce118ca0b80a3a44c1c41ec640">operator/</a> (const <a class="el" href="classcsMatrix2.html">csMatrix2</a> &m, float f)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Divide a matrix by a scalar. <a href="#70e6e6ce118ca0b80a3a44c1c41ec640"></a><br></td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> A 2x2 matrix. <p>Definition at line <a class="el" href="matrix2_8h-source.html#l00037">37</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> <hr><h2>Constructor & Destructor Documentation</h2> <a class="anchor" name="e0283d7331929a8d381c577666652ed2"></a><!-- doxytag: member="csMatrix2::csMatrix2" ref="e0283d7331929a8d381c577666652ed2" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csMatrix2::csMatrix2 </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"></td> </tr> </table> </div> <div class="memdoc"> <p> Construct a matrix, initialized to be the identity. <p> </div> </div><p> <a class="anchor" name="ddf54e79f8c5dce564821bc9c4d089f3"></a><!-- doxytag: member="csMatrix2::csMatrix2" ref="ddf54e79f8c5dce564821bc9c4d089f3" args="(float m11, float m12, float m21, float m22)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">csMatrix2::csMatrix2 </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>m11</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m12</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m21</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m22</em></td><td> </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 and initialize it. <p> </div> </div><p> <hr><h2>Member Function Documentation</h2> <a class="anchor" name="981025e528de1b4793e7147ddefa7a5a"></a><!-- doxytag: member="csMatrix2::Col1" ref="981025e528de1b4793e7147ddefa7a5a" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csMatrix2::Col1 </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00058">58</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="e5aa074ea9dc5c688774db8d5bcaab54"></a><!-- doxytag: member="csMatrix2::Col2" ref="e5aa074ea9dc5c688774db8d5bcaab54" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csMatrix2::Col2 </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00061">61</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="e72e07db9bc688ae5f2268dc8fb35924"></a><!-- doxytag: member="csMatrix2::Determinant" ref="e72e07db9bc688ae5f2268dc8fb35924" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">float csMatrix2::Determinant </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="de833b5d08b2a3673fbe0818d4685880"></a><!-- doxytag: member="csMatrix2::GetInverse" ref="de833b5d08b2a3673fbe0818d4685880" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> csMatrix2::GetInverse </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00101">101</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="8afc2bfd7c2459ac1a7423d84d69950a"></a><!-- doxytag: member="csMatrix2::GetTranspose" ref="8afc2bfd7c2459ac1a7423d84d69950a" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> csMatrix2::GetTranspose </td> <td>(</td> <td class="paramname"> </td> <td> ) </td> <td width="100%"> const</td> </tr> </table> </div> <div class="memdoc"> <p> Return the transpose of this matrix. <p> </div> </div><p> <a class="anchor" name="383152a3a409cc51a0c72a0c518bce56"></a><!-- doxytag: member="csMatrix2::Identity" ref="383152a3a409cc51a0c72a0c518bce56" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csMatrix2::Identity </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="53beca9fc7f3a3e64a324103a1292acc"></a><!-- doxytag: member="csMatrix2::Invert" ref="53beca9fc7f3a3e64a324103a1292acc" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csMatrix2::Invert </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00109">109</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="d05de42e2721c2d7895ca6b5815272ea"></a><!-- doxytag: member="csMatrix2::operator *=" ref="d05de42e2721c2d7895ca6b5815272ea" args="(float s)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a>& csMatrix2::operator *= </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>s</em> </td> <td> ) </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="6d7bb624c831dc257fe0b35053246c70"></a><!-- doxytag: member="csMatrix2::operator *=" ref="6d7bb624c831dc257fe0b35053246c70" args="(const csMatrix2 &m)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a>& csMatrix2::operator *= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em> </td> <td> ) </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="f6e5453f66f504c6a5d627acb5e4a5a4"></a><!-- doxytag: member="csMatrix2::operator+" ref="f6e5453f66f504c6a5d627acb5e4a5a4" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> csMatrix2::operator+ </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00087">87</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="b0607251d8d3f4092bef6c9ce6bf7dab"></a><!-- doxytag: member="csMatrix2::operator+=" ref="b0607251d8d3f4092bef6c9ce6bf7dab" args="(const csMatrix2 &m)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a>& csMatrix2::operator+= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em> </td> <td> ) </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="c395159a67b9e9f79d7cd36a2096e9f4"></a><!-- doxytag: member="csMatrix2::operator-" ref="c395159a67b9e9f79d7cd36a2096e9f4" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> csMatrix2::operator- </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00089">89</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="cd788b1f8f6cf0024a6fbaef96293687"></a><!-- doxytag: member="csMatrix2::operator-=" ref="cd788b1f8f6cf0024a6fbaef96293687" args="(const csMatrix2 &m)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a>& csMatrix2::operator-= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em> </td> <td> ) </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="304f1c12affc5db9f1de8bb26a393f8c"></a><!-- doxytag: member="csMatrix2::operator/=" ref="304f1c12affc5db9f1de8bb26a393f8c" args="(float s)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a>& csMatrix2::operator/= </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>s</em> </td> <td> ) </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="a2283a512a137bc814b40447f9b0d464"></a><!-- doxytag: member="csMatrix2::Row1" ref="a2283a512a137bc814b40447f9b0d464" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csMatrix2::Row1 </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00052">52</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="8ffed2d9047b26f7119413484a33ecc7"></a><!-- doxytag: member="csMatrix2::Row2" ref="8ffed2d9047b26f7119413484a33ecc7" args="() const " --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> csMatrix2::Row2 </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="matrix2_8h-source.html#l00055">55</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="259af777b294c50d4f8a4a50a9e6bf28"></a><!-- doxytag: member="csMatrix2::Set" ref="259af777b294c50d4f8a4a50a9e6bf28" args="(float m11, float m12, float m21, float m22)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csMatrix2::Set </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>m11</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m12</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m21</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>m22</em></td><td> </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="matrix2_8h-source.html#l00064">64</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> <p>References <a class="el" href="matrix2_8h-source.html#l00040">m11</a>, <a class="el" href="matrix2_8h-source.html#l00040">m12</a>, <a class="el" href="matrix2_8h-source.html#l00041">m21</a>, and <a class="el" href="matrix2_8h-source.html#l00041">m22</a>.</p> </div> </div><p> <a class="anchor" name="295a1ab01510caa8171206ecc801f2e4"></a><!-- doxytag: member="csMatrix2::Transpose" ref="295a1ab01510caa8171206ecc801f2e4" args="()" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void csMatrix2::Transpose </td> <td>(</td> <td class="paramname"> </td> <td> ) </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="a437593720aae13b78fea7e23f167764"></a><!-- doxytag: member="csMatrix2::operator *" ref="a437593720aae13b78fea7e23f167764" args="(float f, const csMatrix2 &m)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator * </td> <td>(</td> <td class="paramtype">float </td> <td class="paramname"> <em>f</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em></td><td> </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="5f3b405727778a6d4eabc89e23e6ba94"></a><!-- doxytag: member="csMatrix2::operator *" ref="5f3b405727778a6d4eabc89e23e6ba94" args="(const csMatrix2 &m, float f)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator * </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>f</em></td><td> </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="eff079a7bb536262ce00798bf6f4d336"></a><!-- doxytag: member="csMatrix2::operator *" ref="eff079a7bb536262ce00798bf6f4d336" args="(const csMatrix2 &m, const csVector2 &v)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsVector2.html">csVector2</a> operator * </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsVector2.html">csVector2</a> & </td> <td class="paramname"> <em>v</em></td><td> </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="matrix2_8h-source.html#l00128">128</a> of file <a class="el" href="matrix2_8h-source.html">matrix2.h</a>.</p> </div> </div><p> <a class="anchor" name="5068ee8c52336df3378ba9fd907f711b"></a><!-- doxytag: member="csMatrix2::operator *" ref="5068ee8c52336df3378ba9fd907f711b" args="(const csMatrix2 &m1, const csMatrix2 &m2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator * </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m2</em></td><td> </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="307d0b0b99ce9588f9e68ba0649da908"></a><!-- doxytag: member="csMatrix2::operator+" ref="307d0b0b99ce9588f9e68ba0649da908" args="(const csMatrix2 &m1, const csMatrix2 &m2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator+ </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m2</em></td><td> </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="4e6590e87d2434d3d553be5aa30d5a97"></a><!-- doxytag: member="csMatrix2::operator-" ref="4e6590e87d2434d3d553be5aa30d5a97" args="(const csMatrix2 &m1, const csMatrix2 &m2)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator- </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m1</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m2</em></td><td> </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="70e6e6ce118ca0b80a3a44c1c41ec640"></a><!-- doxytag: member="csMatrix2::operator/" ref="70e6e6ce118ca0b80a3a44c1c41ec640" args="(const csMatrix2 &m, float f)" --> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classcsMatrix2.html">csMatrix2</a> operator/ </td> <td>(</td> <td class="paramtype">const <a class="el" href="classcsMatrix2.html">csMatrix2</a> & </td> <td class="paramname"> <em>m</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">float </td> <td class="paramname"> <em>f</em></td><td> </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> <hr>The documentation for this class was generated from the following file:<ul> <li>csgeom/<a class="el" href="matrix2_8h-source.html">matrix2.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>