Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > ed1483a4d9709d82850bb84cf25535e7 > files > 245

sfml-1.5-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head>
        <title>SFML - Simple and Fast Multimedia Library</title>
        <meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
        <link href="doxygen.css" rel="stylesheet" type="text/css" />
        <link href="tabs.css" rel="stylesheet" type="text/css" />
    </head>
    <body>
        <div id="logo">
            <img src="./logo.jpg" width="770" height="200" title="SFML home" alt="SFML logo" />
        </div>
<!-- Generated by Doxygen 1.5.8 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.htm"><span>Main&nbsp;Page</span></a></li>
      <li><a href="namespaces.htm"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.htm"><span>Classes</span></a></li>
      <li><a href="files.htm"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.htm"><span>Class&nbsp;List</span></a></li>
      <li><a href="classes.htm"><span>Class&nbsp;Index</span></a></li>
      <li><a href="hierarchy.htm"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.htm"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
  <div class="navpath"><b>sf</b>::<a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a>
  </div>
</div>
<div class="contents">
<h1>sf::Matrix3 Class Reference</h1><!-- doxytag: class="sf::Matrix3" -->Utility class to manipulate 3x3 matrices representing 2D transformations.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="Matrix3_8hpp-source.htm">Matrix3.hpp</a>&gt;</code>
<p>

<p>
<a href="classsf_1_1Matrix3-members.htm">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">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#c91b75704a916deb3febe39e06962b4c">Matrix3</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor (builds an identity matrix).  <a href="#c91b75704a916deb3febe39e06962b4c"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#e0dc2db05f945d1e170f6d540193b309">Matrix3</a> (float a00, float a01, float a02, float a10, float a11, float a12, float a20, float a21, float a22)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Construct a matrix from its 9 elements.  <a href="#e0dc2db05f945d1e170f6d540193b309"></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="classsf_1_1Matrix3.htm#beb18b51c51229e809725e4cd5741b2d">SetFromTransformations</a> (const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;Center, const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;Translation, float Rotation, const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;Scale)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build a matrix from a set of transformations.  <a href="#beb18b51c51229e809725e4cd5741b2d"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classsf_1_1Vector2.htm">Vector2f</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#8cb1106305307a8fbf8450f4aa6f4151">Transform</a> (const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;Point) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transform a point by the matrix.  <a href="#8cb1106305307a8fbf8450f4aa6f4151"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#fa7b544f401812b55ace055043385e8e">GetInverse</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the inverse of the matrix.  <a href="#fa7b544f401812b55ace055043385e8e"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const float *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#ff23cbd3d056d404a566a62dea4c98c1">Get4x4Elements</a> () const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return the elements of the matrix as a 4x4, in an array of 16 floats.  <a href="#ff23cbd3d056d404a566a62dea4c98c1"></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="classsf_1_1Matrix3.htm#fffc96664df9bfc7aff4b95a6b11aea8">operator()</a> (unsigned int Row, unsigned int Col) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Operator () overloads to access the matrix elements.  <a href="#fffc96664df9bfc7aff4b95a6b11aea8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="124eb681c1ecb8f98c3e69b173c85545"></a><!-- doxytag: member="sf::Matrix3::operator()" ref="124eb681c1ecb8f98c3e69b173c85545" args="(unsigned int Row, unsigned int Col)" -->
float &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><b>operator()</b> (unsigned int Row, unsigned int Col)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#695f753f4aa2cd617c1cecdfa0212e28">operator*</a> (const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> &amp;Mat) const </td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Operator * overload to multiply two matrices.  <a href="#695f753f4aa2cd617c1cecdfa0212e28"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#ac08a84563176fb77613c43adf402966">operator*=</a> (const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> &amp;Mat)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Operator *= overload to multiply-assign two matrices.  <a href="#ac08a84563176fb77613c43adf402966"></a><br></td></tr>
<tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classsf_1_1Matrix3.htm#fa5a43545e529d8b8628ca42289ef40a">Identity</a></td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Identity matrix.  <a href="#fa5a43545e529d8b8628ca42289ef40a"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Utility class to manipulate 3x3 matrices representing 2D transformations. 
<p>Definition at line <a class="el" href="Matrix3_8hpp-source.htm#l00042">42</a> of file <a class="el" href="Matrix3_8hpp-source.htm">Matrix3.hpp</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="c91b75704a916deb3febe39e06962b4c"></a><!-- doxytag: member="sf::Matrix3::Matrix3" ref="c91b75704a916deb3febe39e06962b4c" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sf::Matrix3::Matrix3           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default constructor (builds an identity matrix). 
<p>

</div>
</div><p>
<a class="anchor" name="e0dc2db05f945d1e170f6d540193b309"></a><!-- doxytag: member="sf::Matrix3::Matrix3" ref="e0dc2db05f945d1e170f6d540193b309" args="(float a00, float a01, float a02, float a10, float a11, float a12, float a20, float a21, float a22)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">sf::Matrix3::Matrix3           </td>
          <td>(</td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a00</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a01</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a02</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a10</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a11</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a12</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a20</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a21</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>a22</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Construct a matrix from its 9 elements. 
<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="ff23cbd3d056d404a566a62dea4c98c1"></a><!-- doxytag: member="sf::Matrix3::Get4x4Elements" ref="ff23cbd3d056d404a566a62dea4c98c1" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const float* sf::Matrix3::Get4x4Elements           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the elements of the matrix as a 4x4, in an array of 16 floats. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Pointer to the 4x4 matrix elements </dd></dl>

</div>
</div><p>
<a class="anchor" name="fa7b544f401812b55ace055043385e8e"></a><!-- doxytag: member="sf::Matrix3::GetInverse" ref="fa7b544f401812b55ace055043385e8e" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> sf::Matrix3::GetInverse           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return the inverse of the matrix. 
<p>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>A new matrix which is the inverse of this </dd></dl>

</div>
</div><p>
<a class="anchor" name="fffc96664df9bfc7aff4b95a6b11aea8"></a><!-- doxytag: member="sf::Matrix3::operator()" ref="fffc96664df9bfc7aff4b95a6b11aea8" args="(unsigned int Row, unsigned int Col) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">float sf::Matrix3::operator()           </td>
          <td>(</td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>Row</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">unsigned int&nbsp;</td>
          <td class="paramname"> <em>Col</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Operator () overloads to access the matrix elements. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Row</em>&nbsp;</td><td>: Element row (0 based) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Col</em>&nbsp;</td><td>: Element column (0 based)</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Matrix element (Row, Col) </dd></dl>

</div>
</div><p>
<a class="anchor" name="695f753f4aa2cd617c1cecdfa0212e28"></a><!-- doxytag: member="sf::Matrix3::operator*" ref="695f753f4aa2cd617c1cecdfa0212e28" args="(const Matrix3 &amp;Mat) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> sf::Matrix3::operator*           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Mat</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Operator * overload to multiply two matrices. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Mat</em>&nbsp;</td><td>: Matrix to multiply</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>this * Mat </dd></dl>

</div>
</div><p>
<a class="anchor" name="ac08a84563176fb77613c43adf402966"></a><!-- doxytag: member="sf::Matrix3::operator*=" ref="ac08a84563176fb77613c43adf402966" args="(const Matrix3 &amp;Mat)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a>&amp; sf::Matrix3::operator*=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Mat</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Operator *= overload to multiply-assign two matrices. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Mat</em>&nbsp;</td><td>: Matrix to multiply</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>this * Mat </dd></dl>

</div>
</div><p>
<a class="anchor" name="beb18b51c51229e809725e4cd5741b2d"></a><!-- doxytag: member="sf::Matrix3::SetFromTransformations" ref="beb18b51c51229e809725e4cd5741b2d" args="(const Vector2f &amp;Center, const Vector2f &amp;Translation, float Rotation, const Vector2f &amp;Scale)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sf::Matrix3::SetFromTransformations           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Center</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Translation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">float&nbsp;</td>
          <td class="paramname"> <em>Rotation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Scale</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Build a matrix from a set of transformations. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Center</em>&nbsp;</td><td>: Origin for the transformations </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Translation</em>&nbsp;</td><td>: Translation offset </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Rotation</em>&nbsp;</td><td>: Rotation angle in degrees </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>Scale</em>&nbsp;</td><td>: Scaling factors </td></tr>
  </table>
</dl>

</div>
</div><p>
<a class="anchor" name="8cb1106305307a8fbf8450f4aa6f4151"></a><!-- doxytag: member="sf::Matrix3::Transform" ref="8cb1106305307a8fbf8450f4aa6f4151" args="(const Vector2f &amp;Point) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> sf::Matrix3::Transform           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classsf_1_1Vector2.htm">Vector2f</a> &amp;&nbsp;</td>
          <td class="paramname"> <em>Point</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const</td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Transform a point by the matrix. 
<p>
<dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>Point</em>&nbsp;</td><td>: Point to transform</td></tr>
  </table>
</dl>
<dl class="return" compact><dt><b>Returns:</b></dt><dd>Transformed point </dd></dl>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="fa5a43545e529d8b8628ca42289ef40a"></a><!-- doxytag: member="sf::Matrix3::Identity" ref="fa5a43545e529d8b8628ca42289ef40a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classsf_1_1Matrix3.htm">Matrix3</a> <a class="el" href="classsf_1_1Matrix3.htm#fa5a43545e529d8b8628ca42289ef40a">sf::Matrix3::Identity</a><code> [static]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Identity matrix. 
<p>

<p>Definition at line <a class="el" href="Matrix3_8hpp-source.htm#l00133">133</a> of file <a class="el" href="Matrix3_8hpp-source.htm">Matrix3.hpp</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following files:<ul>
<li><a class="el" href="Matrix3_8hpp-source.htm">Matrix3.hpp</a><li><a class="el" href="Matrix3_8cpp-source.htm">Matrix3.cpp</a></ul>
</div>

        <p id="footer">
            &nbsp;::&nbsp; Copyright &copy; 2007-2008 Laurent Gomila, all rights reserved &nbsp;::&nbsp;
            Documentation generated by <a href="http://www.doxygen.org/" title="doxygen website">doxygen 1.5.2</a> &nbsp;::&nbsp;
        </p>

    </body>
</html>