source: OGRE/trunk/ogrenew/Docs/api/html/classOgre_1_1Matrix4.html @ 657

Revision 657, 68.6 KB checked in by mattausch, 18 years ago (diff)

added ogre dependencies and patched ogre sources

Line 
1<html>
2<head>
3<title>Ogre::Matrix4 class Reference - OGRE Documentation</title> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
4<link type="text/css" rel="stylesheet" href="style.css">
5</head>
6
7<body>
8<!-- Generated by Doxygen 1.3.6 -->
9<div class="qindex"><a class="qindex" href="index.html">Main&nbsp;Page</a> | <a class="qindex" href="namespaces.html">Namespace List</a> | <a class="qindex" href="hierarchy.html">Class&nbsp;Hierarchy</a> | <a class="qindex" href="classes.html">Alphabetical&nbsp;List</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="namespacemembers.html">Namespace&nbsp;Members</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
10<h1>Ogre::Matrix4 Class Reference</h1>Class encapsulating a standard 4x4 homogenous matrix. 
11<a href="#_details">More...</a>
12<p>
13<code>#include &lt;<a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>&gt;</code>
14<p>
15<a href="classOgre_1_1Matrix4-members.html">List of all members.</a><table border=0 cellpadding=0 cellspacing=0>
16<tr><td></td></tr>
17<tr><td colspan=2><br><h2>Public Member Functions</h2></td></tr>
18<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a0">Matrix4</a> ()</td></tr>
19
20<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Default constructor.  <a href="#Ogre_1_1Matrix4a0"></a><br><br></td></tr>
21<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a1">Matrix4</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> m00, <a class="el" href="namespaceOgre.html#a420">Real</a> m01, <a class="el" href="namespaceOgre.html#a420">Real</a> m02, <a class="el" href="namespaceOgre.html#a420">Real</a> m03, <a class="el" href="namespaceOgre.html#a420">Real</a> m10, <a class="el" href="namespaceOgre.html#a420">Real</a> m11, <a class="el" href="namespaceOgre.html#a420">Real</a> m12, <a class="el" href="namespaceOgre.html#a420">Real</a> m13, <a class="el" href="namespaceOgre.html#a420">Real</a> m20, <a class="el" href="namespaceOgre.html#a420">Real</a> m21, <a class="el" href="namespaceOgre.html#a420">Real</a> m22, <a class="el" href="namespaceOgre.html#a420">Real</a> m23, <a class="el" href="namespaceOgre.html#a420">Real</a> m30, <a class="el" href="namespaceOgre.html#a420">Real</a> m31, <a class="el" href="namespaceOgre.html#a420">Real</a> m32, <a class="el" href="namespaceOgre.html#a420">Real</a> m33)</td></tr>
22
23<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a2">Matrix4</a> (const <a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;m3x3)</td></tr>
24
25<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling 3x3 matrix.  <a href="#Ogre_1_1Matrix4a2"></a><br><br></td></tr>
26<tr><td class="memItemLeft" nowrap align=right valign=top>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a3">Matrix4</a> (const <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a> &amp;rot)</td></tr>
27
28<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a>.  <a href="#Ogre_1_1Matrix4a3"></a><br><br></td></tr>
29<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a> *&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a4">operator[]</a> (size_t iRow)</td></tr>
30
31<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="namespaceOgre.html#a420">Real</a> *const &nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a5">operator[]</a> (size_t iRow) const </td></tr>
32
33<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a6">concatenate</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
34
35<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a7">operator *</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
36
37<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix concatenation using '*'.  <a href="#Ogre_1_1Matrix4a7"></a><br><br></td></tr>
38<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a8">operator *</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v) const </td></tr>
39
40<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Vector transformation using '*'.  <a href="#Ogre_1_1Matrix4a8"></a><br><br></td></tr>
41<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Vector4.html">Vector4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a9">operator *</a> (const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;v) const </td></tr>
42
43<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Plane.html">Plane</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a10">operator *</a> (const <a class="el" href="classOgre_1_1Plane.html">Plane</a> &amp;p) const </td></tr>
44
45<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a11">operator+</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
46
47<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix addition.  <a href="#Ogre_1_1Matrix4a11"></a><br><br></td></tr>
48<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a12">operator-</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
49
50<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Matrix subtraction.  <a href="#Ogre_1_1Matrix4a12"></a><br><br></td></tr>
51<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a13">operator==</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
52
53<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tests 2 matrices for equality.  <a href="#Ogre_1_1Matrix4a13"></a><br><br></td></tr>
54<tr><td class="memItemLeft" nowrap align=right valign=top>bool&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a14">operator!=</a> (const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;m2) const </td></tr>
55
56<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tests 2 matrices for inequality.  <a href="#Ogre_1_1Matrix4a14"></a><br><br></td></tr>
57<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a15">operator=</a> (const <a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;mat3)</td></tr>
58
59<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Assignment from 3x3 matrix.  <a href="#Ogre_1_1Matrix4a15"></a><br><br></td></tr>
60<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a16">transpose</a> (void) const </td></tr>
61
62<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a17">setTrans</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v)</td></tr>
63
64<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the translation transformation part of the matrix.  <a href="#Ogre_1_1Matrix4a17"></a><br><br></td></tr>
65<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Vector3.html">Vector3</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a18">getTrans</a> () const </td></tr>
66
67<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Extracts the translation transformation part of the matrix.  <a href="#Ogre_1_1Matrix4a18"></a><br><br></td></tr>
68<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a19">makeTrans</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v)</td></tr>
69
70<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Builds a translation matrix.  <a href="#Ogre_1_1Matrix4a19"></a><br><br></td></tr>
71<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a20">makeTrans</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> tx, <a class="el" href="namespaceOgre.html#a420">Real</a> ty, <a class="el" href="namespaceOgre.html#a420">Real</a> tz)</td></tr>
72
73<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a21">setScale</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v)</td></tr>
74
75<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sets the scale part of the matrix.  <a href="#Ogre_1_1Matrix4a21"></a><br><br></td></tr>
76<tr><td class="memItemLeft" nowrap align=right valign=top>void&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a22">extract3x3Matrix</a> (<a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;m3x3) const </td></tr>
77
78<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Extracts the rotation / scaling part of the Matrix as a 3x3 matrix.  <a href="#Ogre_1_1Matrix4a22"></a><br><br></td></tr>
79<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a23">extractQuaternion</a> () const </td></tr>
80
81<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Extracts the rotation / scaling part as a quaternion from the Matrix.  <a href="#Ogre_1_1Matrix4a23"></a><br><br></td></tr>
82<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a24">operator *</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> scalar)</td></tr>
83
84<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a25">adjoint</a> () const </td></tr>
85
86<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a26">determinant</a> () const </td></tr>
87
88<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4a27">inverse</a> () const </td></tr>
89
90<tr><td colspan=2><br><h2>Static Public Member Functions</h2></td></tr>
91<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4e0">getTrans</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v)</td></tr>
92
93<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a translation matrix.  <a href="#Ogre_1_1Matrix4e0"></a><br><br></td></tr>
94<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4e1">getTrans</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> t_x, <a class="el" href="namespaceOgre.html#a420">Real</a> t_y, <a class="el" href="namespaceOgre.html#a420">Real</a> t_z)</td></tr>
95
96<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a translation matrix - variation for not using a vector.  <a href="#Ogre_1_1Matrix4e1"></a><br><br></td></tr>
97<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4e2">getScale</a> (const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;v)</td></tr>
98
99<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a scale matrix.  <a href="#Ogre_1_1Matrix4e2"></a><br><br></td></tr>
100<tr><td class="memItemLeft" nowrap align=right valign=top><a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4e3">getScale</a> (<a class="el" href="namespaceOgre.html#a420">Real</a> s_x, <a class="el" href="namespaceOgre.html#a420">Real</a> s_y, <a class="el" href="namespaceOgre.html#a420">Real</a> s_z)</td></tr>
101
102<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Gets a scale matrix - variation for not using a vector.  <a href="#Ogre_1_1Matrix4e3"></a><br><br></td></tr>
103<tr><td colspan=2><br><h2>Static Public Attributes</h2></td></tr>
104<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s0">ZERO</a></td></tr>
105
106<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s1">IDENTITY</a></td></tr>
107
108<tr><td class="memItemLeft" nowrap align=right valign=top>const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a>&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s2">CLIPSPACE2DTOIMAGESPACE</a></td></tr>
109
110<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Useful little matrix which takes 2D clipspace {-1, 1} to {0,1} and inverts the Y.  <a href="#Ogre_1_1Matrix4s2"></a><br><br></td></tr>
111<tr><td colspan=2><br><h2>Friends</h2></td></tr>
112<tr><td class="memItemLeft" nowrap align=right valign=top>_OgreExport friend std::ostream &amp;&nbsp;</td><td class="memItemRight" valign=bottom><a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4n0">operator&lt;&lt;</a> (std::ostream &amp;o, const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;<a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4p0">m</a>)</td></tr>
113
114<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Function for writing to a stream.  <a href="#Ogre_1_1Matrix4n0"></a><br><br></td></tr>
115</table>
116<hr><a name="_details"></a><h2>Detailed Description</h2>
117Class encapsulating a standard 4x4 homogenous matrix.
118<p>
119<dl compact><dt><b>Remarks:</b></dt><dd>OGRE uses column vectors when applying matrix multiplications, This means a vector is represented as a single column, 4-row matrix. This has the effect that the tranformations implemented by the matrices happens right-to-left e.g. if vector V is to be transformed by M1 then M2 then M3, the calculation would be M3 * M2 * M1 * V. The order that matrices are concatenated is vital since matrix multiplication is not cummatative, i.e. you can get a different result if you concatenate in the wrong order. </dd></dl>
120<dl compact><dt><b></b></dt><dd>The use of column vectors and right-to-left ordering is the standard in most mathematical texts, and id the same as used in OpenGL. It is, however, the opposite of Direct3D, which has inexplicably chosen to differ from the accepted standard and uses row vectors and left-to-right matrix multiplication. </dd></dl>
121<dl compact><dt><b></b></dt><dd>OGRE deals with the differences between D3D and OpenGL etc. internally when operating through different render systems. OGRE users only need to conform to standard maths conventions, i.e. right-to-left matrix multiplication, (OGRE transposes matrices it passes to D3D to compensate). </dd></dl>
122<dl compact><dt><b></b></dt><dd>The generic form M * V which shows the layout of the matrix entries is shown below: <pre><div>
123                [ m[0][0]  m[0][1]  m[0][2]  m[0][3] ]   {x}
124                | m[1][0]  m[1][1]  m[1][2]  m[1][3] | * {y}
125                | m[2][0]  m[2][1]  m[2][2]  m[2][3] |   {z}
126                [ m[3][0]  m[3][1]  m[3][2]  m[3][3] ]   {1}
127            </pre></div> </dd></dl>
128
129<p>
130
131<p>
132Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00069">69</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.<hr><h2>Constructor &amp; Destructor Documentation</h2>
133<a class="anchor" name="Ogre_1_1Matrix4a0" doxytag="Ogre::Matrix4::Matrix4" ></a><p>
134<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
135  <tr>
136    <td class="mdRow">
137      <table cellpadding="0" cellspacing="0" border="0">
138        <tr>
139          <td class="md" nowrap valign="top"> Ogre::Matrix4::Matrix4 </td>
140          <td class="md" valign="top">(&nbsp;</td>
141          <td class="mdname1" valign="top" nowrap>          </td>
142          <td class="md" valign="top">&nbsp;)&nbsp;</td>
143          <td class="md" nowrap></td>
144        </tr>
145
146      </table>
147    </td>
148  </tr>
149</table>
150<table cellspacing=5 cellpadding=0 border=0>
151  <tr>
152    <td>
153      &nbsp;
154    </td>
155    <td>
156
157<p>
158Default constructor.
159<p>
160<dl compact><dt><b>Note:</b></dt><dd>It does <b>NOT</b> initialize the matrix for efficiency. </dd></dl>
161
162<p>
163Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00082">82</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
164  </tr>
165</table>
166<a class="anchor" name="Ogre_1_1Matrix4a1" doxytag="Ogre::Matrix4::Matrix4" ></a><p>
167<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
168  <tr>
169    <td class="mdRow">
170      <table cellpadding="0" cellspacing="0" border="0">
171        <tr>
172          <td class="md" nowrap valign="top"> Ogre::Matrix4::Matrix4 </td>
173          <td class="md" valign="top">(&nbsp;</td>
174          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
175          <td class="mdname" nowrap> <em>m00</em>, </td>
176        </tr>
177        <tr>
178          <td class="md" nowrap align="right"></td>
179          <td></td>
180          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
181          <td class="mdname" nowrap> <em>m01</em>, </td>
182        </tr>
183        <tr>
184          <td class="md" nowrap align="right"></td>
185          <td></td>
186          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
187          <td class="mdname" nowrap> <em>m02</em>, </td>
188        </tr>
189        <tr>
190          <td class="md" nowrap align="right"></td>
191          <td></td>
192          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
193          <td class="mdname" nowrap> <em>m03</em>, </td>
194        </tr>
195        <tr>
196          <td class="md" nowrap align="right"></td>
197          <td></td>
198          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
199          <td class="mdname" nowrap> <em>m10</em>, </td>
200        </tr>
201        <tr>
202          <td class="md" nowrap align="right"></td>
203          <td></td>
204          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
205          <td class="mdname" nowrap> <em>m11</em>, </td>
206        </tr>
207        <tr>
208          <td class="md" nowrap align="right"></td>
209          <td></td>
210          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
211          <td class="mdname" nowrap> <em>m12</em>, </td>
212        </tr>
213        <tr>
214          <td class="md" nowrap align="right"></td>
215          <td></td>
216          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
217          <td class="mdname" nowrap> <em>m13</em>, </td>
218        </tr>
219        <tr>
220          <td class="md" nowrap align="right"></td>
221          <td></td>
222          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
223          <td class="mdname" nowrap> <em>m20</em>, </td>
224        </tr>
225        <tr>
226          <td class="md" nowrap align="right"></td>
227          <td></td>
228          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
229          <td class="mdname" nowrap> <em>m21</em>, </td>
230        </tr>
231        <tr>
232          <td class="md" nowrap align="right"></td>
233          <td></td>
234          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
235          <td class="mdname" nowrap> <em>m22</em>, </td>
236        </tr>
237        <tr>
238          <td class="md" nowrap align="right"></td>
239          <td></td>
240          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
241          <td class="mdname" nowrap> <em>m23</em>, </td>
242        </tr>
243        <tr>
244          <td class="md" nowrap align="right"></td>
245          <td></td>
246          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
247          <td class="mdname" nowrap> <em>m30</em>, </td>
248        </tr>
249        <tr>
250          <td class="md" nowrap align="right"></td>
251          <td></td>
252          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
253          <td class="mdname" nowrap> <em>m31</em>, </td>
254        </tr>
255        <tr>
256          <td class="md" nowrap align="right"></td>
257          <td></td>
258          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
259          <td class="mdname" nowrap> <em>m32</em>, </td>
260        </tr>
261        <tr>
262          <td class="md" nowrap align="right"></td>
263          <td></td>
264          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
265          <td class="mdname" nowrap> <em>m33</em></td>
266        </tr>
267        <tr>
268          <td></td>
269          <td class="md">)&nbsp;</td>
270          <td class="md" colspan="2"></td>
271        </tr>
272
273      </table>
274    </td>
275  </tr>
276</table>
277<table cellspacing=5 cellpadding=0 border=0>
278  <tr>
279    <td>
280      &nbsp;
281    </td>
282    <td>
283
284<p>
285
286<p>
287Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00086">86</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
288<p>
289References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
290  </tr>
291</table>
292<a class="anchor" name="Ogre_1_1Matrix4a2" doxytag="Ogre::Matrix4::Matrix4" ></a><p>
293<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
294  <tr>
295    <td class="mdRow">
296      <table cellpadding="0" cellspacing="0" border="0">
297        <tr>
298          <td class="md" nowrap valign="top"> Ogre::Matrix4::Matrix4 </td>
299          <td class="md" valign="top">(&nbsp;</td>
300          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;&nbsp;</td>
301          <td class="mdname1" valign="top" nowrap> <em>m3x3</em>          </td>
302          <td class="md" valign="top">&nbsp;)&nbsp;</td>
303          <td class="md" nowrap></td>
304        </tr>
305
306      </table>
307    </td>
308  </tr>
309</table>
310<table cellspacing=5 cellpadding=0 border=0>
311  <tr>
312    <td>
313      &nbsp;
314    </td>
315    <td>
316
317<p>
318Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling 3x3 matrix.
319<p>
320
321<p>
322Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00113">113</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
323  </tr>
324</table>
325<a class="anchor" name="Ogre_1_1Matrix4a3" doxytag="Ogre::Matrix4::Matrix4" ></a><p>
326<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
327  <tr>
328    <td class="mdRow">
329      <table cellpadding="0" cellspacing="0" border="0">
330        <tr>
331          <td class="md" nowrap valign="top"> Ogre::Matrix4::Matrix4 </td>
332          <td class="md" valign="top">(&nbsp;</td>
333          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a> &amp;&nbsp;</td>
334          <td class="mdname1" valign="top" nowrap> <em>rot</em>          </td>
335          <td class="md" valign="top">&nbsp;)&nbsp;</td>
336          <td class="md" nowrap></td>
337        </tr>
338
339      </table>
340    </td>
341  </tr>
342</table>
343<table cellspacing=5 cellpadding=0 border=0>
344  <tr>
345    <td>
346      &nbsp;
347    </td>
348    <td>
349
350<p>
351Creates a standard 4x4 transformation matrix with a zero translation part from a rotation/scaling <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a>.
352<p>
353
354<p>
355Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00122">122</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
356<p>
357References <a class="el" href="classOgre_1_1Quaternion.html#Ogre_1_1Quaterniona7">Ogre::Quaternion::ToRotationMatrix()</a>.    </td>
358  </tr>
359</table>
360<hr><h2>Member Function Documentation</h2>
361<a class="anchor" name="Ogre_1_1Matrix4a25" doxytag="Ogre::Matrix4::adjoint" ></a><p>
362<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
363  <tr>
364    <td class="mdRow">
365      <table cellpadding="0" cellspacing="0" border="0">
366        <tr>
367          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::adjoint </td>
368          <td class="md" valign="top">(&nbsp;</td>
369          <td class="mdname1" valign="top" nowrap>          </td>
370          <td class="md" valign="top">&nbsp;)&nbsp;</td>
371          <td class="md" nowrap> const</td>
372        </tr>
373
374      </table>
375    </td>
376  </tr>
377</table>
378<table cellspacing=5 cellpadding=0 border=0>
379  <tr>
380    <td>
381      &nbsp;
382    </td>
383    <td>
384
385<p>
386    </td>
387  </tr>
388</table>
389<a class="anchor" name="Ogre_1_1Matrix4a6" doxytag="Ogre::Matrix4::concatenate" ></a><p>
390<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
391  <tr>
392    <td class="mdRow">
393      <table cellpadding="0" cellspacing="0" border="0">
394        <tr>
395          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::concatenate </td>
396          <td class="md" valign="top">(&nbsp;</td>
397          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
398          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
399          <td class="md" valign="top">&nbsp;)&nbsp;</td>
400          <td class="md" nowrap> const</td>
401        </tr>
402
403      </table>
404    </td>
405  </tr>
406</table>
407<table cellspacing=5 cellpadding=0 border=0>
408  <tr>
409    <td>
410      &nbsp;
411    </td>
412    <td>
413
414<p>
415
416<p>
417Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00143">143</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
418<p>
419References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>.    </td>
420  </tr>
421</table>
422<a class="anchor" name="Ogre_1_1Matrix4a26" doxytag="Ogre::Matrix4::determinant" ></a><p>
423<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
424  <tr>
425    <td class="mdRow">
426      <table cellpadding="0" cellspacing="0" border="0">
427        <tr>
428          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> Ogre::Matrix4::determinant </td>
429          <td class="md" valign="top">(&nbsp;</td>
430          <td class="mdname1" valign="top" nowrap>          </td>
431          <td class="md" valign="top">&nbsp;)&nbsp;</td>
432          <td class="md" nowrap> const</td>
433        </tr>
434
435      </table>
436    </td>
437  </tr>
438</table>
439<table cellspacing=5 cellpadding=0 border=0>
440  <tr>
441    <td>
442      &nbsp;
443    </td>
444    <td>
445
446<p>
447    </td>
448  </tr>
449</table>
450<a class="anchor" name="Ogre_1_1Matrix4a22" doxytag="Ogre::Matrix4::extract3x3Matrix" ></a><p>
451<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
452  <tr>
453    <td class="mdRow">
454      <table cellpadding="0" cellspacing="0" border="0">
455        <tr>
456          <td class="md" nowrap valign="top"> void Ogre::Matrix4::extract3x3Matrix </td>
457          <td class="md" valign="top">(&nbsp;</td>
458          <td class="md" nowrap valign="top"><a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;&nbsp;</td>
459          <td class="mdname1" valign="top" nowrap> <em>m3x3</em>          </td>
460          <td class="md" valign="top">&nbsp;)&nbsp;</td>
461          <td class="md" nowrap> const</td>
462        </tr>
463
464      </table>
465    </td>
466  </tr>
467</table>
468<table cellspacing=5 cellpadding=0 border=0>
469  <tr>
470    <td>
471      &nbsp;
472    </td>
473    <td>
474
475<p>
476Extracts the rotation / scaling part of the Matrix as a 3x3 matrix.
477<p>
478<dl compact><dt><b>Parameters:</b></dt><dd>
479  <table border="0" cellspacing="2" cellpadding="0">
480    <tr><td valign=top><em>m3x3</em>&nbsp;</td><td>Destination <a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> </td></tr>
481  </table>
482</dl>
483
484<p>
485Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00434">434</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
486<p>
487References <a class="el" href="OgreMatrix3_8h-source.html#l00296">Ogre::Matrix3::m</a>.    </td>
488  </tr>
489</table>
490<a class="anchor" name="Ogre_1_1Matrix4a23" doxytag="Ogre::Matrix4::extractQuaternion" ></a><p>
491<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
492  <tr>
493    <td class="mdRow">
494      <table cellpadding="0" cellspacing="0" border="0">
495        <tr>
496          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Quaternion.html">Quaternion</a> Ogre::Matrix4::extractQuaternion </td>
497          <td class="md" valign="top">(&nbsp;</td>
498          <td class="mdname1" valign="top" nowrap>          </td>
499          <td class="md" valign="top">&nbsp;)&nbsp;</td>
500          <td class="md" nowrap> const</td>
501        </tr>
502
503      </table>
504    </td>
505  </tr>
506</table>
507<table cellspacing=5 cellpadding=0 border=0>
508  <tr>
509    <td>
510      &nbsp;
511    </td>
512    <td>
513
514<p>
515Extracts the rotation / scaling part as a quaternion from the Matrix.
516<p>
517
518<p>
519Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00450">450</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
520  </tr>
521</table>
522<a class="anchor" name="Ogre_1_1Matrix4e3" doxytag="Ogre::Matrix4::getScale" ></a><p>
523<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
524  <tr>
525    <td class="mdRow">
526      <table cellpadding="0" cellspacing="0" border="0">
527        <tr>
528          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::getScale </td>
529          <td class="md" valign="top">(&nbsp;</td>
530          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
531          <td class="mdname" nowrap> <em>s_x</em>, </td>
532        </tr>
533        <tr>
534          <td class="md" nowrap align="right"></td>
535          <td></td>
536          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
537          <td class="mdname" nowrap> <em>s_y</em>, </td>
538        </tr>
539        <tr>
540          <td class="md" nowrap align="right"></td>
541          <td></td>
542          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
543          <td class="mdname" nowrap> <em>s_z</em></td>
544        </tr>
545        <tr>
546          <td></td>
547          <td class="md">)&nbsp;</td>
548          <td class="md" colspan="2"><code> [static]</code></td>
549        </tr>
550
551      </table>
552    </td>
553  </tr>
554</table>
555<table cellspacing=5 cellpadding=0 border=0>
556  <tr>
557    <td>
558      &nbsp;
559    </td>
560    <td>
561
562<p>
563Gets a scale matrix - variation for not using a vector.
564<p>
565
566<p>
567Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00420">420</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
568<p>
569References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>, and <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
570  </tr>
571</table>
572<a class="anchor" name="Ogre_1_1Matrix4e2" doxytag="Ogre::Matrix4::getScale" ></a><p>
573<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
574  <tr>
575    <td class="mdRow">
576      <table cellpadding="0" cellspacing="0" border="0">
577        <tr>
578          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::getScale </td>
579          <td class="md" valign="top">(&nbsp;</td>
580          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
581          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
582          <td class="md" valign="top">&nbsp;)&nbsp;</td>
583          <td class="md" nowrap><code> [static]</code></td>
584        </tr>
585
586      </table>
587    </td>
588  </tr>
589</table>
590<table cellspacing=5 cellpadding=0 border=0>
591  <tr>
592    <td>
593      &nbsp;
594    </td>
595    <td>
596
597<p>
598Gets a scale matrix.
599<p>
600
601<p>
602Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00407">407</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
603<p>
604References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
605  </tr>
606</table>
607<a class="anchor" name="Ogre_1_1Matrix4e1" doxytag="Ogre::Matrix4::getTrans" ></a><p>
608<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
609  <tr>
610    <td class="mdRow">
611      <table cellpadding="0" cellspacing="0" border="0">
612        <tr>
613          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::getTrans </td>
614          <td class="md" valign="top">(&nbsp;</td>
615          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
616          <td class="mdname" nowrap> <em>t_x</em>, </td>
617        </tr>
618        <tr>
619          <td class="md" nowrap align="right"></td>
620          <td></td>
621          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
622          <td class="mdname" nowrap> <em>t_y</em>, </td>
623        </tr>
624        <tr>
625          <td class="md" nowrap align="right"></td>
626          <td></td>
627          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
628          <td class="mdname" nowrap> <em>t_z</em></td>
629        </tr>
630        <tr>
631          <td></td>
632          <td class="md">)&nbsp;</td>
633          <td class="md" colspan="2"><code> [static]</code></td>
634        </tr>
635
636      </table>
637    </td>
638  </tr>
639</table>
640<table cellspacing=5 cellpadding=0 border=0>
641  <tr>
642    <td>
643      &nbsp;
644    </td>
645    <td>
646
647<p>
648Gets a translation matrix - variation for not using a vector.
649<p>
650
651<p>
652Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00379">379</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
653<p>
654References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>, and <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
655  </tr>
656</table>
657<a class="anchor" name="Ogre_1_1Matrix4e0" doxytag="Ogre::Matrix4::getTrans" ></a><p>
658<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
659  <tr>
660    <td class="mdRow">
661      <table cellpadding="0" cellspacing="0" border="0">
662        <tr>
663          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::getTrans </td>
664          <td class="md" valign="top">(&nbsp;</td>
665          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
666          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
667          <td class="md" valign="top">&nbsp;)&nbsp;</td>
668          <td class="md" nowrap><code> [static]</code></td>
669        </tr>
670
671      </table>
672    </td>
673  </tr>
674</table>
675<table cellspacing=5 cellpadding=0 border=0>
676  <tr>
677    <td>
678      &nbsp;
679    </td>
680    <td>
681
682<p>
683Gets a translation matrix.
684<p>
685
686<p>
687Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00365">365</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
688<p>
689References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
690  </tr>
691</table>
692<a class="anchor" name="Ogre_1_1Matrix4a18" doxytag="Ogre::Matrix4::getTrans" ></a><p>
693<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
694  <tr>
695    <td class="mdRow">
696      <table cellpadding="0" cellspacing="0" border="0">
697        <tr>
698          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> Ogre::Matrix4::getTrans </td>
699          <td class="md" valign="top">(&nbsp;</td>
700          <td class="mdname1" valign="top" nowrap>          </td>
701          <td class="md" valign="top">&nbsp;)&nbsp;</td>
702          <td class="md" nowrap> const</td>
703        </tr>
704
705      </table>
706    </td>
707  </tr>
708</table>
709<table cellspacing=5 cellpadding=0 border=0>
710  <tr>
711    <td>
712      &nbsp;
713    </td>
714    <td>
715
716<p>
717Extracts the translation transformation part of the matrix.
718<p>
719
720<p>
721Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00339">339</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
722  </tr>
723</table>
724<a class="anchor" name="Ogre_1_1Matrix4a27" doxytag="Ogre::Matrix4::inverse" ></a><p>
725<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
726  <tr>
727    <td class="mdRow">
728      <table cellpadding="0" cellspacing="0" border="0">
729        <tr>
730          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::inverse </td>
731          <td class="md" valign="top">(&nbsp;</td>
732          <td class="mdname1" valign="top" nowrap>          </td>
733          <td class="md" valign="top">&nbsp;)&nbsp;</td>
734          <td class="md" nowrap> const</td>
735        </tr>
736
737      </table>
738    </td>
739  </tr>
740</table>
741<table cellspacing=5 cellpadding=0 border=0>
742  <tr>
743    <td>
744      &nbsp;
745    </td>
746    <td>
747
748<p>
749    </td>
750  </tr>
751</table>
752<a class="anchor" name="Ogre_1_1Matrix4a20" doxytag="Ogre::Matrix4::makeTrans" ></a><p>
753<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
754  <tr>
755    <td class="mdRow">
756      <table cellpadding="0" cellspacing="0" border="0">
757        <tr>
758          <td class="md" nowrap valign="top"> void Ogre::Matrix4::makeTrans </td>
759          <td class="md" valign="top">(&nbsp;</td>
760          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
761          <td class="mdname" nowrap> <em>tx</em>, </td>
762        </tr>
763        <tr>
764          <td class="md" nowrap align="right"></td>
765          <td></td>
766          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
767          <td class="mdname" nowrap> <em>ty</em>, </td>
768        </tr>
769        <tr>
770          <td class="md" nowrap align="right"></td>
771          <td></td>
772          <td class="md" nowrap><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
773          <td class="mdname" nowrap> <em>tz</em></td>
774        </tr>
775        <tr>
776          <td></td>
777          <td class="md">)&nbsp;</td>
778          <td class="md" colspan="2"></td>
779        </tr>
780
781      </table>
782    </td>
783  </tr>
784</table>
785<table cellspacing=5 cellpadding=0 border=0>
786  <tr>
787    <td>
788      &nbsp;
789    </td>
790    <td>
791
792<p>
793
794<p>
795Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00355">355</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
796<p>
797References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
798  </tr>
799</table>
800<a class="anchor" name="Ogre_1_1Matrix4a19" doxytag="Ogre::Matrix4::makeTrans" ></a><p>
801<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
802  <tr>
803    <td class="mdRow">
804      <table cellpadding="0" cellspacing="0" border="0">
805        <tr>
806          <td class="md" nowrap valign="top"> void Ogre::Matrix4::makeTrans </td>
807          <td class="md" valign="top">(&nbsp;</td>
808          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
809          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
810          <td class="md" valign="top">&nbsp;)&nbsp;</td>
811          <td class="md" nowrap></td>
812        </tr>
813
814      </table>
815    </td>
816  </tr>
817</table>
818<table cellspacing=5 cellpadding=0 border=0>
819  <tr>
820    <td>
821      &nbsp;
822    </td>
823    <td>
824
825<p>
826Builds a translation matrix.
827<p>
828
829<p>
830Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00347">347</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
831<p>
832References <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
833  </tr>
834</table>
835<a class="anchor" name="Ogre_1_1Matrix4a24" doxytag="Ogre::Matrix4::operator *" ></a><p>
836<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
837  <tr>
838    <td class="mdRow">
839      <table cellpadding="0" cellspacing="0" border="0">
840        <tr>
841          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::operator * </td>
842          <td class="md" valign="top">(&nbsp;</td>
843          <td class="md" nowrap valign="top"><a class="el" href="namespaceOgre.html#a420">Real</a>&nbsp;</td>
844          <td class="mdname1" valign="top" nowrap> <em>scalar</em>          </td>
845          <td class="md" valign="top">&nbsp;)&nbsp;</td>
846          <td class="md" nowrap></td>
847        </tr>
848
849      </table>
850    </td>
851  </tr>
852</table>
853<table cellspacing=5 cellpadding=0 border=0>
854  <tr>
855    <td>
856      &nbsp;
857    </td>
858    <td>
859
860<p>
861
862<p>
863Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00463">463</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
864<p>
865References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
866  </tr>
867</table>
868<a class="anchor" name="Ogre_1_1Matrix4a10" doxytag="Ogre::Matrix4::operator *" ></a><p>
869<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
870  <tr>
871    <td class="mdRow">
872      <table cellpadding="0" cellspacing="0" border="0">
873        <tr>
874          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Plane.html">Plane</a> Ogre::Matrix4::operator * </td>
875          <td class="md" valign="top">(&nbsp;</td>
876          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Plane.html">Plane</a> &amp;&nbsp;</td>
877          <td class="mdname1" valign="top" nowrap> <em>p</em>          </td>
878          <td class="md" valign="top">&nbsp;)&nbsp;</td>
879          <td class="md" nowrap> const</td>
880        </tr>
881
882      </table>
883    </td>
884  </tr>
885</table>
886<table cellspacing=5 cellpadding=0 border=0>
887  <tr>
888    <td>
889      &nbsp;
890    </td>
891    <td>
892
893<p>
894
895<p>
896Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00206">206</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
897<p>
898References <a class="el" href="OgrePlane_8h-source.html#l00090">Ogre::Plane::d</a>, <a class="el" href="OgrePlane_8h-source.html#l00089">Ogre::Plane::normal</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
899  </tr>
900</table>
901<a class="anchor" name="Ogre_1_1Matrix4a9" doxytag="Ogre::Matrix4::operator *" ></a><p>
902<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
903  <tr>
904    <td class="mdRow">
905      <table cellpadding="0" cellspacing="0" border="0">
906        <tr>
907          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> Ogre::Matrix4::operator * </td>
908          <td class="md" valign="top">(&nbsp;</td>
909          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector4.html">Vector4</a> &amp;&nbsp;</td>
910          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
911          <td class="md" valign="top">&nbsp;)&nbsp;</td>
912          <td class="md" nowrap> const</td>
913        </tr>
914
915      </table>
916    </td>
917  </tr>
918</table>
919<table cellspacing=5 cellpadding=0 border=0>
920  <tr>
921    <td>
922      &nbsp;
923    </td>
924    <td>
925
926<p>
927
928<p>
929Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00197">197</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
930<p>
931References <a class="el" href="OgreVector4_8h-source.html#l00041">Ogre::Vector4::w</a>, <a class="el" href="OgreVector4_8h-source.html#l00041">Ogre::Vector4::x</a>, <a class="el" href="OgreVector4_8h-source.html#l00041">Ogre::Vector4::y</a>, and <a class="el" href="OgreVector4_8h-source.html#l00041">Ogre::Vector4::z</a>.    </td>
932  </tr>
933</table>
934<a class="anchor" name="Ogre_1_1Matrix4a8" doxytag="Ogre::Matrix4::operator *" ></a><p>
935<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
936  <tr>
937    <td class="mdRow">
938      <table cellpadding="0" cellspacing="0" border="0">
939        <tr>
940          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> Ogre::Matrix4::operator * </td>
941          <td class="md" valign="top">(&nbsp;</td>
942          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
943          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
944          <td class="md" valign="top">&nbsp;)&nbsp;</td>
945          <td class="md" nowrap> const</td>
946        </tr>
947
948      </table>
949    </td>
950  </tr>
951</table>
952<table cellspacing=5 cellpadding=0 border=0>
953  <tr>
954    <td>
955      &nbsp;
956    </td>
957    <td>
958
959<p>
960Vector transformation using '*'.
961<p>
962<dl compact><dt><b>Remarks:</b></dt><dd>Transforms the given 3-D vector by the matrix, projecting the result back into <em>w</em> = 1. </dd></dl>
963<dl compact><dt><b>Note:</b></dt><dd>This means that the initial <em>w</em> is considered to be 1.0, and then all the tree elements of the resulting 3-D vector are divided by the resulting <em>w</em>. </dd></dl>
964
965<p>
966Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00185">185</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
967<p>
968References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
969  </tr>
970</table>
971<a class="anchor" name="Ogre_1_1Matrix4a7" doxytag="Ogre::Matrix4::operator *" ></a><p>
972<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
973  <tr>
974    <td class="mdRow">
975      <table cellpadding="0" cellspacing="0" border="0">
976        <tr>
977          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::operator * </td>
978          <td class="md" valign="top">(&nbsp;</td>
979          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
980          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
981          <td class="md" valign="top">&nbsp;)&nbsp;</td>
982          <td class="md" nowrap> const</td>
983        </tr>
984
985      </table>
986    </td>
987  </tr>
988</table>
989<table cellspacing=5 cellpadding=0 border=0>
990  <tr>
991    <td>
992      &nbsp;
993    </td>
994    <td>
995
996<p>
997Matrix concatenation using '*'.
998<p>
999
1000<p>
1001Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00171">171</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1002  </tr>
1003</table>
1004<a class="anchor" name="Ogre_1_1Matrix4a14" doxytag="Ogre::Matrix4::operator!=" ></a><p>
1005<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1006  <tr>
1007    <td class="mdRow">
1008      <table cellpadding="0" cellspacing="0" border="0">
1009        <tr>
1010          <td class="md" nowrap valign="top"> bool Ogre::Matrix4::operator!= </td>
1011          <td class="md" valign="top">(&nbsp;</td>
1012          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
1013          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
1014          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1015          <td class="md" nowrap> const</td>
1016        </tr>
1017
1018      </table>
1019    </td>
1020  </tr>
1021</table>
1022<table cellspacing=5 cellpadding=0 border=0>
1023  <tr>
1024    <td>
1025      &nbsp;
1026    </td>
1027    <td>
1028
1029<p>
1030Tests 2 matrices for inequality.
1031<p>
1032
1033<p>
1034Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00295">295</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1035<p>
1036References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>.    </td>
1037  </tr>
1038</table>
1039<a class="anchor" name="Ogre_1_1Matrix4a11" doxytag="Ogre::Matrix4::operator+" ></a><p>
1040<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1041  <tr>
1042    <td class="mdRow">
1043      <table cellpadding="0" cellspacing="0" border="0">
1044        <tr>
1045          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::operator+ </td>
1046          <td class="md" valign="top">(&nbsp;</td>
1047          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
1048          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
1049          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1050          <td class="md" nowrap> const</td>
1051        </tr>
1052
1053      </table>
1054    </td>
1055  </tr>
1056</table>
1057<table cellspacing=5 cellpadding=0 border=0>
1058  <tr>
1059    <td>
1060      &nbsp;
1061    </td>
1062    <td>
1063
1064<p>
1065Matrix addition.
1066<p>
1067
1068<p>
1069Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00225">225</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1070<p>
1071References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>.    </td>
1072  </tr>
1073</table>
1074<a class="anchor" name="Ogre_1_1Matrix4a12" doxytag="Ogre::Matrix4::operator-" ></a><p>
1075<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1076  <tr>
1077    <td class="mdRow">
1078      <table cellpadding="0" cellspacing="0" border="0">
1079        <tr>
1080          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::operator- </td>
1081          <td class="md" valign="top">(&nbsp;</td>
1082          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
1083          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
1084          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1085          <td class="md" nowrap> const</td>
1086        </tr>
1087
1088      </table>
1089    </td>
1090  </tr>
1091</table>
1092<table cellspacing=5 cellpadding=0 border=0>
1093  <tr>
1094    <td>
1095      &nbsp;
1096    </td>
1097    <td>
1098
1099<p>
1100Matrix subtraction.
1101<p>
1102
1103<p>
1104Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00254">254</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1105<p>
1106References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>.    </td>
1107  </tr>
1108</table>
1109<a class="anchor" name="Ogre_1_1Matrix4a15" doxytag="Ogre::Matrix4::operator=" ></a><p>
1110<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1111  <tr>
1112    <td class="mdRow">
1113      <table cellpadding="0" cellspacing="0" border="0">
1114        <tr>
1115          <td class="md" nowrap valign="top"> void Ogre::Matrix4::operator= </td>
1116          <td class="md" valign="top">(&nbsp;</td>
1117          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix3.html">Matrix3</a> &amp;&nbsp;</td>
1118          <td class="mdname1" valign="top" nowrap> <em>mat3</em>          </td>
1119          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1120          <td class="md" nowrap></td>
1121        </tr>
1122
1123      </table>
1124    </td>
1125  </tr>
1126</table>
1127<table cellspacing=5 cellpadding=0 border=0>
1128  <tr>
1129    <td>
1130      &nbsp;
1131    </td>
1132    <td>
1133
1134<p>
1135Assignment from 3x3 matrix.
1136<p>
1137
1138<p>
1139Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00308">308</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1140<p>
1141References <a class="el" href="OgreMatrix3_8h-source.html#l00296">Ogre::Matrix3::m</a>.    </td>
1142  </tr>
1143</table>
1144<a class="anchor" name="Ogre_1_1Matrix4a13" doxytag="Ogre::Matrix4::operator==" ></a><p>
1145<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1146  <tr>
1147    <td class="mdRow">
1148      <table cellpadding="0" cellspacing="0" border="0">
1149        <tr>
1150          <td class="md" nowrap valign="top"> bool Ogre::Matrix4::operator== </td>
1151          <td class="md" valign="top">(&nbsp;</td>
1152          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
1153          <td class="mdname1" valign="top" nowrap> <em>m2</em>          </td>
1154          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1155          <td class="md" nowrap> const</td>
1156        </tr>
1157
1158      </table>
1159    </td>
1160  </tr>
1161</table>
1162<table cellspacing=5 cellpadding=0 border=0>
1163  <tr>
1164    <td>
1165      &nbsp;
1166    </td>
1167    <td>
1168
1169<p>
1170Tests 2 matrices for equality.
1171<p>
1172
1173<p>
1174Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00282">282</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1175<p>
1176References <a class="el" href="OgreMatrix4_8h-source.html#l00074">m</a>.    </td>
1177  </tr>
1178</table>
1179<a class="anchor" name="Ogre_1_1Matrix4a5" doxytag="Ogre::Matrix4::operator[]" ></a><p>
1180<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1181  <tr>
1182    <td class="mdRow">
1183      <table cellpadding="0" cellspacing="0" border="0">
1184        <tr>
1185          <td class="md" nowrap valign="top"> const <a class="el" href="namespaceOgre.html#a420">Real</a>* const Ogre::Matrix4::operator[] </td>
1186          <td class="md" valign="top">(&nbsp;</td>
1187          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1188          <td class="mdname1" valign="top" nowrap> <em>iRow</em>          </td>
1189          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1190          <td class="md" nowrap> const</td>
1191        </tr>
1192
1193      </table>
1194    </td>
1195  </tr>
1196</table>
1197<table cellspacing=5 cellpadding=0 border=0>
1198  <tr>
1199    <td>
1200      &nbsp;
1201    </td>
1202    <td>
1203
1204<p>
1205
1206<p>
1207Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00137">137</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1208<p>
1209References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
1210  </tr>
1211</table>
1212<a class="anchor" name="Ogre_1_1Matrix4a4" doxytag="Ogre::Matrix4::operator[]" ></a><p>
1213<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1214  <tr>
1215    <td class="mdRow">
1216      <table cellpadding="0" cellspacing="0" border="0">
1217        <tr>
1218          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a>* Ogre::Matrix4::operator[] </td>
1219          <td class="md" valign="top">(&nbsp;</td>
1220          <td class="md" nowrap valign="top">size_t&nbsp;</td>
1221          <td class="mdname1" valign="top" nowrap> <em>iRow</em>          </td>
1222          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1223          <td class="md" nowrap></td>
1224        </tr>
1225
1226      </table>
1227    </td>
1228  </tr>
1229</table>
1230<table cellspacing=5 cellpadding=0 border=0>
1231  <tr>
1232    <td>
1233      &nbsp;
1234    </td>
1235    <td>
1236
1237<p>
1238
1239<p>
1240Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00131">131</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1241<p>
1242References <a class="el" href="OgrePrerequisites_8h-source.html#l00111">Ogre::Real</a>.    </td>
1243  </tr>
1244</table>
1245<a class="anchor" name="Ogre_1_1Matrix4a21" doxytag="Ogre::Matrix4::setScale" ></a><p>
1246<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1247  <tr>
1248    <td class="mdRow">
1249      <table cellpadding="0" cellspacing="0" border="0">
1250        <tr>
1251          <td class="md" nowrap valign="top"> void Ogre::Matrix4::setScale </td>
1252          <td class="md" valign="top">(&nbsp;</td>
1253          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
1254          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
1255          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1256          <td class="md" nowrap></td>
1257        </tr>
1258
1259      </table>
1260    </td>
1261  </tr>
1262</table>
1263<table cellspacing=5 cellpadding=0 border=0>
1264  <tr>
1265    <td>
1266      &nbsp;
1267    </td>
1268    <td>
1269
1270<p>
1271Sets the scale part of the matrix.
1272<p>
1273
1274<p>
1275Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00398">398</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1276<p>
1277References <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
1278  </tr>
1279</table>
1280<a class="anchor" name="Ogre_1_1Matrix4a17" doxytag="Ogre::Matrix4::setTrans" ></a><p>
1281<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1282  <tr>
1283    <td class="mdRow">
1284      <table cellpadding="0" cellspacing="0" border="0">
1285        <tr>
1286          <td class="md" nowrap valign="top"> void Ogre::Matrix4::setTrans </td>
1287          <td class="md" valign="top">(&nbsp;</td>
1288          <td class="md" nowrap valign="top">const <a class="el" href="classOgre_1_1Vector3.html">Vector3</a> &amp;&nbsp;</td>
1289          <td class="mdname1" valign="top" nowrap> <em>v</em>          </td>
1290          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1291          <td class="md" nowrap></td>
1292        </tr>
1293
1294      </table>
1295    </td>
1296  </tr>
1297</table>
1298<table cellspacing=5 cellpadding=0 border=0>
1299  <tr>
1300    <td>
1301      &nbsp;
1302    </td>
1303    <td>
1304
1305<p>
1306Sets the translation transformation part of the matrix.
1307<p>
1308
1309<p>
1310Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00330">330</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1311<p>
1312References <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::x</a>, <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::y</a>, and <a class="el" href="OgreVector3_8h-source.html#l00047">Ogre::Vector3::z</a>.    </td>
1313  </tr>
1314</table>
1315<a class="anchor" name="Ogre_1_1Matrix4a16" doxytag="Ogre::Matrix4::transpose" ></a><p>
1316<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1317  <tr>
1318    <td class="mdRow">
1319      <table cellpadding="0" cellspacing="0" border="0">
1320        <tr>
1321          <td class="md" nowrap valign="top"> <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> Ogre::Matrix4::transpose </td>
1322          <td class="md" valign="top">(&nbsp;</td>
1323          <td class="md" nowrap valign="top">void&nbsp;</td>
1324          <td class="mdname1" valign="top" nowrap>          </td>
1325          <td class="md" valign="top">&nbsp;)&nbsp;</td>
1326          <td class="md" nowrap> const</td>
1327        </tr>
1328
1329      </table>
1330    </td>
1331  </tr>
1332</table>
1333<table cellspacing=5 cellpadding=0 border=0>
1334  <tr>
1335    <td>
1336      &nbsp;
1337    </td>
1338    <td>
1339
1340<p>
1341
1342<p>
1343Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00315">315</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1344  </tr>
1345</table>
1346<hr><h2>Friends And Related Function Documentation</h2>
1347<a class="anchor" name="Ogre_1_1Matrix4n0" doxytag="Ogre::Matrix4::operator<<" ></a><p>
1348<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1349  <tr>
1350    <td class="mdRow">
1351      <table cellpadding="0" cellspacing="0" border="0">
1352        <tr>
1353          <td class="md" nowrap valign="top"> _OgreExport friend std::ostream&amp; operator&lt;&lt; </td>
1354          <td class="md" valign="top">(&nbsp;</td>
1355          <td class="md" nowrap valign="top">std::ostream &amp;&nbsp;</td>
1356          <td class="mdname" nowrap> <em>o</em>, </td>
1357        </tr>
1358        <tr>
1359          <td class="md" nowrap align="right"></td>
1360          <td></td>
1361          <td class="md" nowrap>const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> &amp;&nbsp;</td>
1362          <td class="mdname" nowrap> <em>m</em></td>
1363        </tr>
1364        <tr>
1365          <td></td>
1366          <td class="md">)&nbsp;</td>
1367          <td class="md" colspan="2"><code> [friend]</code></td>
1368        </tr>
1369
1370      </table>
1371    </td>
1372  </tr>
1373</table>
1374<table cellspacing=5 cellpadding=0 border=0>
1375  <tr>
1376    <td>
1377      &nbsp;
1378    </td>
1379    <td>
1380
1381<p>
1382Function for writing to a stream.
1383<p>
1384
1385<p>
1386Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00475">475</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1387  </tr>
1388</table>
1389<hr><h2>Member Data Documentation</h2>
1390<a class="anchor" name="Ogre_1_1Matrix4p1" doxytag="Ogre::Matrix4::_m" ></a><p>
1391<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1392  <tr>
1393    <td class="mdRow">
1394      <table cellpadding="0" cellspacing="0" border="0">
1395        <tr>
1396          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> <a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4p1">Ogre::Matrix4::_m</a>[16]<code> [protected]</code>
1397      </table>
1398    </td>
1399  </tr>
1400</table>
1401<table cellspacing=5 cellpadding=0 border=0>
1402  <tr>
1403    <td>
1404      &nbsp;
1405    </td>
1406    <td>
1407
1408<p>
1409
1410<p>
1411Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00075">75</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1412  </tr>
1413</table>
1414<a class="anchor" name="Ogre_1_1Matrix4s2" doxytag="Ogre::Matrix4::CLIPSPACE2DTOIMAGESPACE" ></a><p>
1415<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1416  <tr>
1417    <td class="mdRow">
1418      <table cellpadding="0" cellspacing="0" border="0">
1419        <tr>
1420          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> <a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s2">Ogre::Matrix4::CLIPSPACE2DTOIMAGESPACE</a><code> [static]</code>
1421      </table>
1422    </td>
1423  </tr>
1424</table>
1425<table cellspacing=5 cellpadding=0 border=0>
1426  <tr>
1427    <td>
1428      &nbsp;
1429    </td>
1430    <td>
1431
1432<p>
1433Useful little matrix which takes 2D clipspace {-1, 1} to {0,1} and inverts the Y.
1434<p>
1435
1436<p>
1437Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00461">461</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1438  </tr>
1439</table>
1440<a class="anchor" name="Ogre_1_1Matrix4s1" doxytag="Ogre::Matrix4::IDENTITY" ></a><p>
1441<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1442  <tr>
1443    <td class="mdRow">
1444      <table cellpadding="0" cellspacing="0" border="0">
1445        <tr>
1446          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> <a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s1">Ogre::Matrix4::IDENTITY</a><code> [static]</code>
1447      </table>
1448    </td>
1449  </tr>
1450</table>
1451<table cellspacing=5 cellpadding=0 border=0>
1452  <tr>
1453    <td>
1454      &nbsp;
1455    </td>
1456    <td>
1457
1458<p>
1459
1460<p>
1461Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00458">458</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1462  </tr>
1463</table>
1464<a class="anchor" name="Ogre_1_1Matrix4p0" doxytag="Ogre::Matrix4::m" ></a><p>
1465<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1466  <tr>
1467    <td class="mdRow">
1468      <table cellpadding="0" cellspacing="0" border="0">
1469        <tr>
1470          <td class="md" nowrap valign="top"> <a class="el" href="namespaceOgre.html#a420">Real</a> <a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4p0">Ogre::Matrix4::m</a>[4][4]<code> [protected]</code>
1471      </table>
1472    </td>
1473  </tr>
1474</table>
1475<table cellspacing=5 cellpadding=0 border=0>
1476  <tr>
1477    <td>
1478      &nbsp;
1479    </td>
1480    <td>
1481
1482<p>
1483
1484<p>
1485Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00074">74</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.
1486<p>
1487Referenced by <a class="el" href="OgreMatrix4_8h-source.html#l00143">concatenate()</a>, <a class="el" href="OgreMatrix4_8h-source.html#l00407">getScale()</a>, <a class="el" href="OgreMatrix4_8h-source.html#l00365">getTrans()</a>, <a class="el" href="OgreMatrix4_8h-source.html#l00295">operator!=()</a>, <a class="el" href="OgreMatrix4_8h-source.html#l00225">operator+()</a>, <a class="el" href="OgreMatrix4_8h-source.html#l00254">operator-()</a>, and <a class="el" href="OgreMatrix4_8h-source.html#l00282">operator==()</a>.    </td>
1488  </tr>
1489</table>
1490<a class="anchor" name="Ogre_1_1Matrix4s0" doxytag="Ogre::Matrix4::ZERO" ></a><p>
1491<table class="mdTable" width="100%" cellpadding="2" cellspacing="0">
1492  <tr>
1493    <td class="mdRow">
1494      <table cellpadding="0" cellspacing="0" border="0">
1495        <tr>
1496          <td class="md" nowrap valign="top"> const <a class="el" href="classOgre_1_1Matrix4.html">Matrix4</a> <a class="el" href="classOgre_1_1Matrix4.html#Ogre_1_1Matrix4s0">Ogre::Matrix4::ZERO</a><code> [static]</code>
1497      </table>
1498    </td>
1499  </tr>
1500</table>
1501<table cellspacing=5 cellpadding=0 border=0>
1502  <tr>
1503    <td>
1504      &nbsp;
1505    </td>
1506    <td>
1507
1508<p>
1509
1510<p>
1511Definition at line <a class="el" href="OgreMatrix4_8h-source.html#l00457">457</a> of file <a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a>.    </td>
1512  </tr>
1513</table>
1514<hr>The documentation for this class was generated from the following file:<ul>
1515<li><a class="el" href="OgreMatrix4_8h-source.html">OgreMatrix4.h</a></ul>
1516<hr>
1517<p>
1518Copyright &copy; 2000-2005 by The OGRE Team<br />
1519<!--Creative Commons License--><a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/"><img alt="Creative Commons License" border="0" src="http://creativecommons.org/images/public/somerights20.png"/></a><br/>
1520This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-sa/2.5/">Creative Commons Attribution-ShareAlike 2.5 License</a>.<br/>
1521                <!--/Creative Commons License--><!-- <rdf:RDF xmlns="http://web.resource.org/cc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
1522                <Work rdf:about="">
1523                        <license rdf:resource="http://creativecommons.org/licenses/by-sa/2.5/" />
1524        <dc:type rdf:resource="http://purl.org/dc/dcmitype/Text" />
1525                </Work>
1526                <License rdf:about="http://creativecommons.org/licenses/by-sa/2.5/"><permits rdf:resource="http://web.resource.org/cc/Reproduction"/><permits rdf:resource="http://web.resource.org/cc/Distribution"/><requires rdf:resource="http://web.resource.org/cc/Notice"/><requires rdf:resource="http://web.resource.org/cc/Attribution"/><permits rdf:resource="http://web.resource.org/cc/DerivativeWorks"/><requires rdf:resource="http://web.resource.org/cc/ShareAlike"/></License></rdf:RDF> -->
1527
1528Last modified Sun Feb 12 13:01:06 2006
1529</p>
1530</body>
1531</html>
Note: See TracBrowser for help on using the repository browser.