aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html
diff options
context:
space:
mode:
Diffstat (limited to 'src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html')
-rw-r--r--src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html2908
1 files changed, 2908 insertions, 0 deletions
diff --git a/src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html b/src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html
new file mode 100644
index 0000000..9875ee4
--- /dev/null
+++ b/src/others/irrlicht-1.8.1/doc/html/classirr_1_1core_1_1_c_matrix4.html
@@ -0,0 +1,2908 @@
1<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2<html xmlns="http://www.w3.org/1999/xhtml">
3<head>
4<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5<title>Irrlicht 3D Engine: irr::core::CMatrix4&lt; T &gt; Class Template Reference</title>
6
7<link href="tabs.css" rel="stylesheet" type="text/css"/>
8<link href="doxygen.css" rel="stylesheet" type="text/css" />
9<link href="navtree.css" rel="stylesheet" type="text/css"/>
10<script type="text/javascript" src="jquery.js"></script>
11<script type="text/javascript" src="resize.js"></script>
12<script type="text/javascript" src="navtree.js"></script>
13<script type="text/javascript">
14 $(document).ready(initResizable);
15</script>
16<link href="search/search.css" rel="stylesheet" type="text/css"/>
17<script type="text/javascript" src="search/search.js"></script>
18<script type="text/javascript">
19 $(document).ready(function() { searchBox.OnSelectItem(0); });
20</script>
21
22</head>
23<body>
24<div id="top"><!-- do not remove this div! -->
25
26
27<div id="titlearea">
28<table cellspacing="0" cellpadding="0">
29 <tbody>
30 <tr style="height: 56px;">
31
32 <td id="projectlogo"><img alt="Logo" src="irrlichtlogo.png"/></td>
33
34
35 <td style="padding-left: 0.5em;">
36 <div id="projectname">Irrlicht 3D Engine
37
38 </div>
39
40 </td>
41
42
43
44
45 <td> <div id="MSearchBox" class="MSearchBoxInactive">
46 <span class="left">
47 <img id="MSearchSelect" src="search/mag_sel.png"
48 onmouseover="return searchBox.OnSearchSelectShow()"
49 onmouseout="return searchBox.OnSearchSelectHide()"
50 alt=""/>
51 <input type="text" id="MSearchField" value="Search" accesskey="S"
52 onfocus="searchBox.OnSearchFieldFocus(true)"
53 onblur="searchBox.OnSearchFieldFocus(false)"
54 onkeyup="searchBox.OnSearchFieldChange(event)"/>
55 </span><span class="right">
56 <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
57 </span>
58 </div>
59</td>
60
61
62 </tr>
63 </tbody>
64</table>
65</div>
66
67<!-- Generated by Doxygen 1.7.5.1 -->
68<script type="text/javascript">
69var searchBox = new SearchBox("searchBox", "search",false,'Search');
70</script>
71<script type="text/javascript" src="dynsections.js"></script>
72</div>
73<div id="side-nav" class="ui-resizable side-nav-resizable">
74 <div id="nav-tree">
75 <div id="nav-tree-contents">
76 </div>
77 </div>
78 <div id="splitbar" style="-moz-user-select:none;"
79 class="ui-resizable-handle">
80 </div>
81</div>
82<script type="text/javascript">
83 initNavTree('classirr_1_1core_1_1_c_matrix4.html','');
84</script>
85<div id="doc-content">
86<div class="header">
87 <div class="summary">
88<a href="#pub-types">Public Types</a> &#124;
89<a href="#pub-methods">Public Member Functions</a> </div>
90 <div class="headertitle">
91<div class="title">irr::core::CMatrix4&lt; T &gt; Class Template Reference</div> </div>
92</div>
93<div class="contents">
94<!-- doxytag: class="irr::core::CMatrix4" -->
95<p>4x4 matrix. Mostly used as transformation matrix for 3d calculations.
96 <a href="classirr_1_1core_1_1_c_matrix4.html#details">More...</a></p>
97
98<p><code>#include &lt;<a class="el" href="matrix4_8h_source.html">matrix4.h</a>&gt;</code></p>
99
100<p><a href="classirr_1_1core_1_1_c_matrix4-members.html">List of all members.</a></p>
101<h2><a name="pub-types"></a>
102Public Types</h2>
103<ul>
104<li>enum <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">eConstructor</a> { <br/>
105&#160;&#160;<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fea3566901f796f109f56c30a682ec132b3">EM4CONST_NOTHING</a> = 0,
106<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4feab61ca9be4d8fcd46a77ea3a3f6112c28">EM4CONST_COPY</a>,
107<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4feabe4fda38ad4e2e186bd0b12e776ad71f">EM4CONST_IDENTITY</a>,
108<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fea6d05daa023ea476dea59533ce3d07d23">EM4CONST_TRANSPOSED</a>,
109<br/>
110&#160;&#160;<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fea4d69cdac3d8daf867fcaa1ec889f2c09">EM4CONST_INVERSE</a>,
111<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4feadff480a8b2060068f8c0971dcb8c9e6b">EM4CONST_INVERSE_TRANSPOSED</a>
112<br/>
113 }
114<dl class="el"><dd class="mdescRight">Constructor Flags. <a href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">More...</a><br/></dl></ul>
115<h2><a name="pub-methods"></a>
116Public Member Functions</h2>
117<ul>
118<li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html#af771bfde63cdaa3baa4d9f6121e56411">CMatrix4</a> (<a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">eConstructor</a> constructor=EM4CONST_IDENTITY)
119<dl class="el"><dd class="mdescRight">Default constructor. <a href="#af771bfde63cdaa3baa4d9f6121e56411"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html#acdb7afc2248d97a7e882cd1bdeed07b7">CMatrix4</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other, <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">eConstructor</a> constructor=EM4CONST_COPY)
120<dl class="el"><dd class="mdescRight">Copy constructor. <a href="#acdb7afc2248d97a7e882cd1bdeed07b7"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ad2dc80f2aed15900839389cf52f9e798">buildAxisAlignedBillboard</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;camPos, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;center, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;translation, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;axis, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;from)
121<dl class="el"><dd class="mdescRight">Builds a matrix which rotates a source vector to a look vector over an arbitrary axis. <a href="#ad2dc80f2aed15900839389cf52f9e798"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a78e15297c806006898df58498755ecd4">buildCameraLookAtMatrixLH</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;position, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;target, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;upVector)
122<dl class="el"><dd class="mdescRight">Builds a left-handed look-at matrix. <a href="#a78e15297c806006898df58498755ecd4"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a62ebd6002a5018c1096ac368f6be271a">buildCameraLookAtMatrixRH</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;position, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;target, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;upVector)
123<dl class="el"><dd class="mdescRight">Builds a right-handed look-at matrix. <a href="#a62ebd6002a5018c1096ac368f6be271a"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a88a7d2f56d4ce637823379de308f673a">buildNDCToDCMatrix</a> (const <a class="el" href="classirr_1_1core_1_1rect.html">core::rect</a>&lt; <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> &gt; &amp;area, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zScale)
124<dl class="el"><dd class="mdescRight">Builds a matrix which transforms a normalized Device Coordinate to Device Coordinates. <a href="#a88a7d2f56d4ce637823379de308f673a"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ae4a0618e2da724a26a5d8a201a63d8a5">buildProjectionMatrixOrthoLH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> widthOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> heightOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
125<dl class="el"><dd class="mdescRight">Builds a left-handed orthogonal projection matrix. <a href="#ae4a0618e2da724a26a5d8a201a63d8a5"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ae7a837a3b2d86bfc830d25c6144b7a46">buildProjectionMatrixOrthoRH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> widthOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> heightOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
126<dl class="el"><dd class="mdescRight">Builds a right-handed orthogonal projection matrix. <a href="#ae7a837a3b2d86bfc830d25c6144b7a46"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a3e4c3f6c545dd522f9f09177259f2f18">buildProjectionMatrixPerspectiveFovInfinityLH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> fieldOfViewRadians, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> aspectRatio, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> epsilon=0)
127<dl class="el"><dd class="mdescRight">Builds a left-handed perspective projection matrix based on a field of view, with far plane at infinity. <a href="#a3e4c3f6c545dd522f9f09177259f2f18"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a1895b967a8f8c9d7ad90fe5434f2499f">buildProjectionMatrixPerspectiveFovLH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> fieldOfViewRadians, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> aspectRatio, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
128<dl class="el"><dd class="mdescRight">Builds a left-handed perspective projection matrix based on a field of view. <a href="#a1895b967a8f8c9d7ad90fe5434f2499f"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a5bea6c6f5479720841cea61651e35879">buildProjectionMatrixPerspectiveFovRH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> fieldOfViewRadians, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> aspectRatio, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
129<dl class="el"><dd class="mdescRight">Builds a right-handed perspective projection matrix based on a field of view. <a href="#a5bea6c6f5479720841cea61651e35879"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8306f02451b06f8e6710f23631654086">buildProjectionMatrixPerspectiveLH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> widthOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> heightOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
130<dl class="el"><dd class="mdescRight">Builds a left-handed perspective projection matrix. <a href="#a8306f02451b06f8e6710f23631654086"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a649a29922f622503399bcb16c97b78b4">buildProjectionMatrixPerspectiveRH</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> widthOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> heightOfViewVolume, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zNear, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> zFar)
131<dl class="el"><dd class="mdescRight">Builds a right-handed perspective projection matrix. <a href="#a649a29922f622503399bcb16c97b78b4"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a4802c6a89ad813e2919f68f512fb320f">buildRotateFromTo</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;from, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;to)
132<dl class="el"><dd class="mdescRight">Builds a matrix that rotates from one vector to another. <a href="#a4802c6a89ad813e2919f68f512fb320f"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a583d0ece1d80f69101660e1cbe441768">buildShadowMatrix</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;light, <a class="el" href="namespaceirr_1_1core.html#ae7491b7985dcb74b840bfcd9c054b232">core::plane3df</a> plane, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> point=1.0f)
133<dl class="el"><dd class="mdescRight">Builds a matrix that flattens geometry into a plane. <a href="#a583d0ece1d80f69101660e1cbe441768"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#afc72faaf2c883d9c0fdc1e0940d1acde">buildTextureTransform</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> rotateRad, const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;rotatecenter, const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;translate, const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;scale)
134<dl class="el"><dd class="mdescRight">Set to a texture transformation matrix with the given parameters. <a href="#afc72faaf2c883d9c0fdc1e0940d1acde"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a5342bc1ac46e8bf7e287f1d58ec702c2">equals</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::CMatrix4</a>&lt; T &gt; &amp;other, const T tolerance=(T) <a class="el" href="namespaceirr_1_1core.html#a7b314c22d6804639cbcbce5231724f0b">ROUNDING_ERROR_f64</a>) const
135<dl class="el"><dd class="mdescRight">Compare two matrices using the equal method. <a href="#a5342bc1ac46e8bf7e287f1d58ec702c2"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ab91cb550bdacbc7b79a47d5b4ee5f4fa">getDefinitelyIdentityMatrix</a> () const
136<dl class="el"><dd class="mdescRight">Gets if the matrix is definitely identity matrix. <a href="#ab91cb550bdacbc7b79a47d5b4ee5f4fa"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a33c110cd75fdddb840a990ab52f10900">getInverse</a> (<a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;out) const
137<dl class="el"><dd class="mdescRight">Gets the inversed matrix of this one. <a href="#a33c110cd75fdddb840a990ab52f10900"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#af8c024c494998296fc7ed63603d7cb62">getInversePrimitive</a> (<a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;out) const
138<dl class="el"><dd class="mdescRight">Inverts a primitive matrix which only contains a translation and a rotation. <a href="#af8c024c494998296fc7ed63603d7cb62"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aa348817a724b49816da5c181ba672e1d">getRotationDegrees</a> () const
139<dl class="el"><dd class="mdescRight">Returns the rotation, as set by setRotation(). <a href="#aa348817a724b49816da5c181ba672e1d"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aa29f46680cea92b6d38886d1e9759cdd">getScale</a> () const
140<dl class="el"><dd class="mdescRight">Get Scale. <a href="#aa29f46680cea92b6d38886d1e9759cdd"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aec84b278e87611352b75298238e54006">getTranslation</a> () const
141<dl class="el"><dd class="mdescRight">Gets the current translation. <a href="#aec84b278e87611352b75298238e54006"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a83e8a629180ab12262d2e2cf52c7991b">getTransposed</a> () const
142<dl class="el"><dd class="mdescRight">Gets transposed matrix. <a href="#a83e8a629180ab12262d2e2cf52c7991b"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#abc4f641ad798591424020e38efe21636">getTransposed</a> (<a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;dest) const
143<dl class="el"><dd class="mdescRight">Gets transposed matrix. <a href="#abc4f641ad798591424020e38efe21636"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a0c9ed4a87ab8a1340e075490cd9de309">interpolate</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::CMatrix4</a>&lt; T &gt; &amp;b, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> time) const
144<dl class="el"><dd class="mdescRight">Creates a new matrix as interpolated matrix from two other ones. <a href="#a0c9ed4a87ab8a1340e075490cd9de309"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7996bee0d3056d6647dc9cc840ed0ad8">inverseRotateVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;vect) const
145<dl class="el"><dd class="mdescRight">Rotate a vector by the inverse of the rotation part of this matrix. <a href="#a7996bee0d3056d6647dc9cc840ed0ad8"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a83bf069639e0538f047041ae51042907">inverseTranslateVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;vect) const
146<dl class="el"><dd class="mdescRight">Translate a vector by the inverse of the translation part of this matrix. <a href="#a83bf069639e0538f047041ae51042907"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a24e7bc5d302f6c0cb11bad0771a40826">isIdentity</a> () const
147<dl class="el"><dd class="mdescRight">Returns true if the matrix is the identity matrix. <a href="#a24e7bc5d302f6c0cb11bad0771a40826"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ab4b515a697bb3749a8e1dd9fc31342bd">isIdentity_integer_base</a> () const
148<dl class="el"><dd class="mdescRight">Returns true if the matrix is the identity matrix. <a href="#ab4b515a697bb3749a8e1dd9fc31342bd"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#afc4fe0bdfb771b15eff91264c0ed37f9">isOrthogonal</a> () const
149<dl class="el"><dd class="mdescRight">Returns true if the matrix is orthogonal. <a href="#afc4fe0bdfb771b15eff91264c0ed37f9"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a45f876ed1aed2c3c98b87fee6d938604">makeIdentity</a> ()
150<dl class="el"><dd class="mdescRight">Set matrix to identity. <a href="#a45f876ed1aed2c3c98b87fee6d938604"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a3fbface2cb6b959af64f82a5bb17540e">makeInverse</a> ()
151<dl class="el"><dd class="mdescRight">Calculates inverse of matrix. Slow. <a href="#a3fbface2cb6b959af64f82a5bb17540e"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a1e1f04cdf57dc76be2875427498a0d62">multiplyWith1x4Matrix</a> (T *matrix) const
152<dl class="el"><dd class="mdescRight">Multiplies this matrix by a 1x4 matrix. <a href="#a1e1f04cdf57dc76be2875427498a0d62"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a99b4c127f31033b5f7314b98164b99ed">operator!=</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other) const
153<dl class="el"><dd class="mdescRight">Returns true if other matrix is not equal to this matrix. <a href="#a99b4c127f31033b5f7314b98164b99ed"></a><br/></dl><li>T &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aaede6824ed3ee05b928815d52e1834d1">operator()</a> (const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> row, const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> col)
154<dl class="el"><dd class="mdescRight">Simple operator for directly accessing every element of the matrix. <a href="#aaede6824ed3ee05b928815d52e1834d1"></a><br/></dl><li>const T &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a370e3a1ed88e95011125d09943b50e3b">operator()</a> (const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> row, const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> col) const
155<dl class="el"><dd class="mdescRight">Simple operator for directly accessing every element of the matrix. <a href="#a370e3a1ed88e95011125d09943b50e3b"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a4173ab9beecf99940ba2eb01081f1613">operator*</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other) const
156<dl class="el"><dd class="mdescRight">Multiply by another matrix. <a href="#a4173ab9beecf99940ba2eb01081f1613"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a2695d5d90aa8cf55e06649fc83752466">operator*</a> (const T &amp;scalar) const
157<dl class="el"><dd class="mdescRight">Multiply by scalar. <a href="#a2695d5d90aa8cf55e06649fc83752466"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac3d29f86c91d9d095ab155ecb8870f87">operator*=</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other)
158<dl class="el"><dd class="mdescRight">Multiply by another matrix. <a href="#ac3d29f86c91d9d095ab155ecb8870f87"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ae78879a3d7f0113ba5208d5476c3af9c">operator*=</a> (const T &amp;scalar)
159<dl class="el"><dd class="mdescRight">Multiply by scalar. <a href="#ae78879a3d7f0113ba5208d5476c3af9c"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac2192a7d9dd89dcd23fe2f9ded3252bf">operator+</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other) const
160<dl class="el"><dd class="mdescRight">Add another matrix. <a href="#ac2192a7d9dd89dcd23fe2f9ded3252bf"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#af91c5be0562ce4be3f8feedd3d017ba1">operator+=</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other)
161<dl class="el"><dd class="mdescRight">Add another matrix. <a href="#af91c5be0562ce4be3f8feedd3d017ba1"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aee45563e7f9fdf3d4ef7f5a9d63d87c0">operator-</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other) const
162<dl class="el"><dd class="mdescRight">Subtract another matrix. <a href="#aee45563e7f9fdf3d4ef7f5a9d63d87c0"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a24eb7faa1418765ba87d3f02f27d643f">operator-=</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other)
163<dl class="el"><dd class="mdescRight">Subtract another matrix. <a href="#a24eb7faa1418765ba87d3f02f27d643f"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a47571eb3acae9a6aa330a03edcea7896">operator=</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other)
164<dl class="el"><dd class="mdescRight">Sets this matrix equal to the other matrix. <a href="#a47571eb3acae9a6aa330a03edcea7896"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aa77c0ec30f4e42f7281392440898e9e3">operator=</a> (const T &amp;scalar)
165<dl class="el"><dd class="mdescRight">Sets all elements of this matrix to the value. <a href="#aa77c0ec30f4e42f7281392440898e9e3"></a><br/></dl><li>bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a81029252a2a83ef4647f5d8a02cf62b5">operator==</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other) const
166<dl class="el"><dd class="mdescRight">Returns true if other matrix is equal to this matrix. <a href="#a81029252a2a83ef4647f5d8a02cf62b5"></a><br/></dl><li>T &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aead4909f8bb2ab40875af175caf0085f">operator[]</a> (<a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> index)
167<dl class="el"><dd class="mdescRight">Simple operator for linearly accessing every element of the matrix. <a href="#aead4909f8bb2ab40875af175caf0085f"></a><br/></dl><li>const T &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a1c7a81521e81280c31b8ae3397d1fffe">operator[]</a> (<a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a> index) const
168<dl class="el"><dd class="mdescRight">Simple operator for linearly accessing every element of the matrix. <a href="#a1c7a81521e81280c31b8ae3397d1fffe"></a><br/></dl><li>const T * <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a11a3ffa3eb0987030e7a8758dee8965a">pointer</a> () const
169<dl class="el"><dd class="mdescRight">Returns pointer to internal array. <a href="#a11a3ffa3eb0987030e7a8758dee8965a"></a><br/></dl><li>T * <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a2d9b231425d1b8abddb9e1e997fbf2ea">pointer</a> ()
170<li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8abcfbf972b19946c3022db380c6d153">rotateVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;vect) const
171<dl class="el"><dd class="mdescRight">Rotate a vector by the rotation part of this matrix. <a href="#a8abcfbf972b19946c3022db380c6d153"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a592d57581118b651a24dc68b17b99ff6">rotateVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;out, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;in) const
172<dl class="el"><dd class="mdescRight">An alternate transform vector method, writing into a second vector. <a href="#a592d57581118b651a24dc68b17b99ff6"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aa188488f489118e4daafd3b2ebab5119">rotateVect</a> (T *out, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;in) const
173<dl class="el"><dd class="mdescRight">An alternate transform vector method, writing into an array of 3 floats. <a href="#aa188488f489118e4daafd3b2ebab5119"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8503c58913ba9407ba00b173d8a3e25c">setbyproduct</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other_a, const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other_b)
174<dl class="el"><dd class="mdescRight">set this matrix to the product of two matrices <a href="#a8503c58913ba9407ba00b173d8a3e25c"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a526a2a11dcd8b18c9e77deb84094778d">setbyproduct_nocheck</a> (const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other_a, const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;other_b)
175<dl class="el"><dd class="mdescRight">Set this matrix to the product of two matrices. <a href="#a526a2a11dcd8b18c9e77deb84094778d"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a87f7195337a2bf7a49978c2ec1100c0a">setDefinitelyIdentityMatrix</a> (bool isDefinitelyIdentityMatrix)
176<dl class="el"><dd class="mdescRight">Sets if the matrix is definitely identity matrix. <a href="#a87f7195337a2bf7a49978c2ec1100c0a"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#afd84b9c93b4c8e9dc2abefa4a28057f9">setInverseRotationDegrees</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;rotation)
177<dl class="el"><dd class="mdescRight">Make an inverted rotation matrix from Euler angles. <a href="#afd84b9c93b4c8e9dc2abefa4a28057f9"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a1a15d7b55769678512144f0fb7e15a92">setInverseRotationRadians</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;rotation)
178<dl class="el"><dd class="mdescRight">Make an inverted rotation matrix from Euler angles. <a href="#a1a15d7b55769678512144f0fb7e15a92"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a258e103fcb6ce1564978624280ecb7fe">setInverseTranslation</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;translation)
179<dl class="el"><dd class="mdescRight">Set the inverse translation of the current matrix. Will erase any previous values. <a href="#a258e103fcb6ce1564978624280ecb7fe"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ae59fb2248865eba3026d13b9756ba1e1">setM</a> (const T *data)
180<dl class="el"><dd class="mdescRight">Sets all matrix data members at once. <a href="#ae59fb2248865eba3026d13b9756ba1e1"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a2fad61540e78fc7dafe7f6270b0558ac">setRotationAxisRadians</a> (const T &amp;angle, const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;axis)
181<dl class="el"><dd class="mdescRight">Make a rotation matrix from angle and axis, assuming left handed rotation. <a href="#a2fad61540e78fc7dafe7f6270b0558ac"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8117628146ce654b3b292af7c49e25e2">setRotationCenter</a> (const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;center, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;translate)
182<dl class="el"><dd class="mdescRight">Builds a combined matrix which translates to a center before rotation and translates from origin afterwards. <a href="#a8117628146ce654b3b292af7c49e25e2"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8ee5ef8619d4b0f56d72ac84495ed644">setRotationDegrees</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;rotation)
183<dl class="el"><dd class="mdescRight">Make a rotation matrix from Euler angles. The 4th row and column are unmodified. <a href="#a8ee5ef8619d4b0f56d72ac84495ed644"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a05aac7bd2e7651369fc813a51258afbe">setRotationRadians</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;rotation)
184<dl class="el"><dd class="mdescRight">Make a rotation matrix from Euler angles. The 4th row and column are unmodified. <a href="#a05aac7bd2e7651369fc813a51258afbe"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a47117d44419af87e70084c01ab852049">setScale</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;scale)
185<dl class="el"><dd class="mdescRight">Set Scale. <a href="#a47117d44419af87e70084c01ab852049"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a18af980e2bc3575f60576b6d4b4cc0f3">setScale</a> (const T scale)
186<dl class="el"><dd class="mdescRight">Set Scale. <a href="#a18af980e2bc3575f60576b6d4b4cc0f3"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a445a7653292ae4ffb0baa50032a8674e">setTextureRotationCenter</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> radAngle)
187<dl class="el"><dd class="mdescRight">Set texture transformation rotation. <a href="#a445a7653292ae4ffb0baa50032a8674e"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aed32a7a8da9c4cee5babe8f6b4aa7dd4">setTextureScale</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> sx, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> sy)
188<dl class="el"><dd class="mdescRight">Set texture transformation scale. <a href="#aed32a7a8da9c4cee5babe8f6b4aa7dd4"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#adbd668867d117dc9331e68abef0af221">setTextureScaleCenter</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> sx, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> sy)
189<dl class="el"><dd class="mdescRight">Set texture transformation scale, and recenter at (0.5,0.5) <a href="#adbd668867d117dc9331e68abef0af221"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a2bab9633697a892f08d89c7aeee6daf6">setTextureTranslate</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> x, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> y)
190<dl class="el"><dd class="mdescRight">Set texture transformation translation. <a href="#a2bab9633697a892f08d89c7aeee6daf6"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7d999210cc7427e9d744271e50d26c3c">setTextureTranslateTransposed</a> (<a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> x, <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> y)
191<dl class="el"><dd class="mdescRight">Set texture transformation translation, using a transposed representation. <a href="#a7d999210cc7427e9d744271e50d26c3c"></a><br/></dl><li><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac04a3b341cbfbb7986be682691655622">setTranslation</a> (const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;translation)
192<dl class="el"><dd class="mdescRight">Set the translation of the current matrix. Will erase any previous values. <a href="#ac04a3b341cbfbb7986be682691655622"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac12468d698fbf6cd545e8b3fbf2a0042">transformBox</a> (<a class="el" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;box) const
193<dl class="el"><dd class="mdescRight">Transforms a axis aligned bounding box. <a href="#ac12468d698fbf6cd545e8b3fbf2a0042"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a87451aea9c07b71d1a8b6091b8cefa63">transformBoxEx</a> (<a class="el" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;box) const
194<dl class="el"><dd class="mdescRight">Transforms a axis aligned bounding box. <a href="#a87451aea9c07b71d1a8b6091b8cefa63"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac4f0d4156d573d8b73eb51dce76e094e">transformPlane</a> (<a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;plane) const
195<dl class="el"><dd class="mdescRight">Transforms a plane by this matrix. <a href="#ac4f0d4156d573d8b73eb51dce76e094e"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a949042276c2025189cc568c8080d7579">transformPlane</a> (const <a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;in, <a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;out) const
196<dl class="el"><dd class="mdescRight">Transforms a plane by this matrix. <a href="#a949042276c2025189cc568c8080d7579"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a82b910d8a4116a7455167dfa62fc4d72">transformVec3</a> (T *out, const T *in) const
197<dl class="el"><dd class="mdescRight">An alternate transform vector method, reading from and writing to an array of 3 floats. <a href="#a82b910d8a4116a7455167dfa62fc4d72"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aa6bb8b39114749d70e51bd1b90bce0a1">transformVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;vect) const
198<dl class="el"><dd class="mdescRight">Transforms the vector by this matrix. <a href="#aa6bb8b39114749d70e51bd1b90bce0a1"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7f630ed6811ab36921c2fe6f63f7f426">transformVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;out, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;in) const
199<dl class="el"><dd class="mdescRight">Transforms input vector by this matrix and stores result in output vector. <a href="#a7f630ed6811ab36921c2fe6f63f7f426"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#aad3d6e0c59e2d5709a534abc2b86dbd3">transformVect</a> (T *out, const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;in) const
200<dl class="el"><dd class="mdescRight">An alternate transform vector method, writing into an array of 4 floats. <a href="#aad3d6e0c59e2d5709a534abc2b86dbd3"></a><br/></dl><li>void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a587cb77fd7de7a13771c96a90c4f3de0">translateVect</a> (<a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;vect) const
201<dl class="el"><dd class="mdescRight">Translate a vector by the translation part of this matrix. <a href="#a587cb77fd7de7a13771c96a90c4f3de0"></a><br/></dl></ul>
202<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
203<div class="textblock"><h3>template&lt;class T&gt;<br/>
204class irr::core::CMatrix4&lt; T &gt;</h3>
205
206<p>4x4 matrix. Mostly used as transformation matrix for 3d calculations. </p>
207<p>The matrix is a D3D style matrix, row major with translations in the 4th row. </p>
208
209<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00045">45</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
210</div><hr/><h2>Member Enumeration Documentation</h2>
211<a class="anchor" id="a7bb79712227617f706ed57a34f3eb4fe"></a><!-- doxytag: member="irr::core::CMatrix4::eConstructor" ref="a7bb79712227617f706ed57a34f3eb4fe" args="" -->
212<div class="memitem">
213<div class="memproto">
214<div class="memtemplate">
215template&lt;class T&gt; </div>
216 <table class="memname">
217 <tr>
218 <td class="memname">enum <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">irr::core::CMatrix4::eConstructor</a></td>
219 </tr>
220 </table>
221</div>
222<div class="memdoc">
223
224<p>Constructor Flags. </p>
225<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
226<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4fea3566901f796f109f56c30a682ec132b3"></a><!-- doxytag: member="EM4CONST_NOTHING" ref="a7bb79712227617f706ed57a34f3eb4fea3566901f796f109f56c30a682ec132b3" args="" -->EM4CONST_NOTHING</em>&nbsp;</td><td>
227</td></tr>
228<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4feab61ca9be4d8fcd46a77ea3a3f6112c28"></a><!-- doxytag: member="EM4CONST_COPY" ref="a7bb79712227617f706ed57a34f3eb4feab61ca9be4d8fcd46a77ea3a3f6112c28" args="" -->EM4CONST_COPY</em>&nbsp;</td><td>
229</td></tr>
230<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4feabe4fda38ad4e2e186bd0b12e776ad71f"></a><!-- doxytag: member="EM4CONST_IDENTITY" ref="a7bb79712227617f706ed57a34f3eb4feabe4fda38ad4e2e186bd0b12e776ad71f" args="" -->EM4CONST_IDENTITY</em>&nbsp;</td><td>
231</td></tr>
232<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4fea6d05daa023ea476dea59533ce3d07d23"></a><!-- doxytag: member="EM4CONST_TRANSPOSED" ref="a7bb79712227617f706ed57a34f3eb4fea6d05daa023ea476dea59533ce3d07d23" args="" -->EM4CONST_TRANSPOSED</em>&nbsp;</td><td>
233</td></tr>
234<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4fea4d69cdac3d8daf867fcaa1ec889f2c09"></a><!-- doxytag: member="EM4CONST_INVERSE" ref="a7bb79712227617f706ed57a34f3eb4fea4d69cdac3d8daf867fcaa1ec889f2c09" args="" -->EM4CONST_INVERSE</em>&nbsp;</td><td>
235</td></tr>
236<tr><td valign="top"><em><a class="anchor" id="a7bb79712227617f706ed57a34f3eb4feadff480a8b2060068f8c0971dcb8c9e6b"></a><!-- doxytag: member="EM4CONST_INVERSE_TRANSPOSED" ref="a7bb79712227617f706ed57a34f3eb4feadff480a8b2060068f8c0971dcb8c9e6b" args="" -->EM4CONST_INVERSE_TRANSPOSED</em>&nbsp;</td><td>
237</td></tr>
238</table>
239</dd>
240</dl>
241
242<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00050">50</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
243
244</div>
245</div>
246<hr/><h2>Constructor &amp; Destructor Documentation</h2>
247<a class="anchor" id="af771bfde63cdaa3baa4d9f6121e56411"></a><!-- doxytag: member="irr::core::CMatrix4::CMatrix4" ref="af771bfde63cdaa3baa4d9f6121e56411" args="(eConstructor constructor=EM4CONST_IDENTITY)" -->
248<div class="memitem">
249<div class="memproto">
250<div class="memtemplate">
251template&lt;class T &gt; </div>
252 <table class="memname">
253 <tr>
254 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::<a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a> </td>
255 <td>(</td>
256 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">eConstructor</a>&#160;</td>
257 <td class="paramname"><em>constructor</em> = <code>EM4CONST_IDENTITY</code></td><td>)</td>
258 <td><code> [inline]</code></td>
259 </tr>
260 </table>
261</div>
262<div class="memdoc">
263
264<p>Default constructor. </p>
265<dl><dt><b>Parameters:</b></dt><dd>
266 <table class="params">
267 <tr><td class="paramname">constructor</td><td>Choose the initialization style </td></tr>
268 </table>
269 </dd>
270</dl>
271
272<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00417">417</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
273
274</div>
275</div>
276<a class="anchor" id="acdb7afc2248d97a7e882cd1bdeed07b7"></a><!-- doxytag: member="irr::core::CMatrix4::CMatrix4" ref="acdb7afc2248d97a7e882cd1bdeed07b7" args="(const CMatrix4&lt; T &gt; &amp;other, eConstructor constructor=EM4CONST_COPY)" -->
277<div class="memitem">
278<div class="memproto">
279<div class="memtemplate">
280template&lt;class T &gt; </div>
281 <table class="memname">
282 <tr>
283 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::<a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a> </td>
284 <td>(</td>
285 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
286 <td class="paramname"><em>other</em>, </td>
287 </tr>
288 <tr>
289 <td class="paramkey"></td>
290 <td></td>
291 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a7bb79712227617f706ed57a34f3eb4fe">eConstructor</a>&#160;</td>
292 <td class="paramname"><em>constructor</em> = <code>EM4CONST_COPY</code>&#160;</td>
293 </tr>
294 <tr>
295 <td></td>
296 <td>)</td>
297 <td></td><td><code> [inline]</code></td>
298 </tr>
299 </table>
300</div>
301<div class="memdoc">
302
303<p>Copy constructor. </p>
304<dl><dt><b>Parameters:</b></dt><dd>
305 <table class="params">
306 <tr><td class="paramname">other</td><td>Other matrix to copy from </td></tr>
307 <tr><td class="paramname">constructor</td><td>Choose the initialization style </td></tr>
308 </table>
309 </dd>
310</dl>
311
312<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00440">440</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
313
314<p>References <a class="el" href="matrix4_8h_source.html#l01307">irr::core::CMatrix4&lt; T &gt;::getInverse()</a>, and <a class="el" href="matrix4_8h_source.html#l01874">irr::core::CMatrix4&lt; T &gt;::getTransposed()</a>.</p>
315
316</div>
317</div>
318<hr/><h2>Member Function Documentation</h2>
319<a class="anchor" id="ad2dc80f2aed15900839389cf52f9e798"></a><!-- doxytag: member="irr::core::CMatrix4::buildAxisAlignedBillboard" ref="ad2dc80f2aed15900839389cf52f9e798" args="(const core::vector3df &amp;camPos, const core::vector3df &amp;center, const core::vector3df &amp;translation, const core::vector3df &amp;axis, const core::vector3df &amp;from)" -->
320<div class="memitem">
321<div class="memproto">
322<div class="memtemplate">
323template&lt;class T &gt; </div>
324 <table class="memname">
325 <tr>
326 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildAxisAlignedBillboard </td>
327 <td>(</td>
328 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
329 <td class="paramname"><em>camPos</em>, </td>
330 </tr>
331 <tr>
332 <td class="paramkey"></td>
333 <td></td>
334 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
335 <td class="paramname"><em>center</em>, </td>
336 </tr>
337 <tr>
338 <td class="paramkey"></td>
339 <td></td>
340 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
341 <td class="paramname"><em>translation</em>, </td>
342 </tr>
343 <tr>
344 <td class="paramkey"></td>
345 <td></td>
346 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
347 <td class="paramname"><em>axis</em>, </td>
348 </tr>
349 <tr>
350 <td class="paramkey"></td>
351 <td></td>
352 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
353 <td class="paramname"><em>from</em>&#160;</td>
354 </tr>
355 <tr>
356 <td></td>
357 <td>)</td>
358 <td></td><td><code> [inline]</code></td>
359 </tr>
360 </table>
361</div>
362<div class="memdoc">
363
364<p>Builds a matrix which rotates a source vector to a look vector over an arbitrary axis. </p>
365<dl><dt><b>Parameters:</b></dt><dd>
366 <table class="params">
367 <tr><td class="paramname">camPos,:</td><td>viewer position in world coo </td></tr>
368 <tr><td class="paramname">center,:</td><td>object position in world-coo and rotation pivot </td></tr>
369 <tr><td class="paramname">translation,:</td><td>object final translation from center </td></tr>
370 <tr><td class="paramname">axis,:</td><td>axis to rotate about </td></tr>
371 <tr><td class="paramname">from,:</td><td>source vector to rotate from</td></tr>
372 <tr><td class="paramname">camPos,:</td><td>viewer position in world coord </td></tr>
373 <tr><td class="paramname">center,:</td><td>object position in world-coord, rotation pivot </td></tr>
374 <tr><td class="paramname">translation,:</td><td>object final translation from center </td></tr>
375 <tr><td class="paramname">axis,:</td><td>axis to rotate about </td></tr>
376 <tr><td class="paramname">from,:</td><td>source vector to rotate from </td></tr>
377 </table>
378 </dd>
379</dl>
380
381<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01990">1990</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
382
383<p>References <a class="el" href="vector3d_8h_source.html#l00147">irr::core::vector3d&lt; T &gt;::crossProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00125">irr::core::vector3d&lt; T &gt;::dotProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00168">irr::core::vector3d&lt; T &gt;::normalize()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
384
385</div>
386</div>
387<a class="anchor" id="a78e15297c806006898df58498755ecd4"></a><!-- doxytag: member="irr::core::CMatrix4::buildCameraLookAtMatrixLH" ref="a78e15297c806006898df58498755ecd4" args="(const vector3df &amp;position, const vector3df &amp;target, const vector3df &amp;upVector)" -->
388<div class="memitem">
389<div class="memproto">
390<div class="memtemplate">
391template&lt;class T &gt; </div>
392 <table class="memname">
393 <tr>
394 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildCameraLookAtMatrixLH </td>
395 <td>(</td>
396 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
397 <td class="paramname"><em>position</em>, </td>
398 </tr>
399 <tr>
400 <td class="paramkey"></td>
401 <td></td>
402 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
403 <td class="paramname"><em>target</em>, </td>
404 </tr>
405 <tr>
406 <td class="paramkey"></td>
407 <td></td>
408 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
409 <td class="paramname"><em>upVector</em>&#160;</td>
410 </tr>
411 <tr>
412 <td></td>
413 <td>)</td>
414 <td></td><td><code> [inline]</code></td>
415 </tr>
416 </table>
417</div>
418<div class="memdoc">
419
420<p>Builds a left-handed look-at matrix. </p>
421
422<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01775">1775</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
423
424<p>References <a class="el" href="vector3d_8h_source.html#l00147">irr::core::vector3d&lt; T &gt;::crossProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00125">irr::core::vector3d&lt; T &gt;::dotProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00168">irr::core::vector3d&lt; T &gt;::normalize()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
425
426</div>
427</div>
428<a class="anchor" id="a62ebd6002a5018c1096ac368f6be271a"></a><!-- doxytag: member="irr::core::CMatrix4::buildCameraLookAtMatrixRH" ref="a62ebd6002a5018c1096ac368f6be271a" args="(const vector3df &amp;position, const vector3df &amp;target, const vector3df &amp;upVector)" -->
429<div class="memitem">
430<div class="memproto">
431<div class="memtemplate">
432template&lt;class T &gt; </div>
433 <table class="memname">
434 <tr>
435 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildCameraLookAtMatrixRH </td>
436 <td>(</td>
437 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
438 <td class="paramname"><em>position</em>, </td>
439 </tr>
440 <tr>
441 <td class="paramkey"></td>
442 <td></td>
443 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
444 <td class="paramname"><em>target</em>, </td>
445 </tr>
446 <tr>
447 <td class="paramkey"></td>
448 <td></td>
449 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
450 <td class="paramname"><em>upVector</em>&#160;</td>
451 </tr>
452 <tr>
453 <td></td>
454 <td>)</td>
455 <td></td><td><code> [inline]</code></td>
456 </tr>
457 </table>
458</div>
459<div class="memdoc">
460
461<p>Builds a right-handed look-at matrix. </p>
462
463<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01816">1816</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
464
465<p>References <a class="el" href="vector3d_8h_source.html#l00147">irr::core::vector3d&lt; T &gt;::crossProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00125">irr::core::vector3d&lt; T &gt;::dotProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00168">irr::core::vector3d&lt; T &gt;::normalize()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
466
467</div>
468</div>
469<a class="anchor" id="a88a7d2f56d4ce637823379de308f673a"></a><!-- doxytag: member="irr::core::CMatrix4::buildNDCToDCMatrix" ref="a88a7d2f56d4ce637823379de308f673a" args="(const core::rect&lt; s32 &gt; &amp;area, f32 zScale)" -->
470<div class="memitem">
471<div class="memproto">
472<div class="memtemplate">
473template&lt;class T &gt; </div>
474 <table class="memname">
475 <tr>
476 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildNDCToDCMatrix </td>
477 <td>(</td>
478 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1rect.html">core::rect</a>&lt; <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a> &gt; &amp;&#160;</td>
479 <td class="paramname"><em>area</em>, </td>
480 </tr>
481 <tr>
482 <td class="paramkey"></td>
483 <td></td>
484 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
485 <td class="paramname"><em>zScale</em>&#160;</td>
486 </tr>
487 <tr>
488 <td></td>
489 <td>)</td>
490 <td></td><td><code> [inline]</code></td>
491 </tr>
492 </table>
493</div>
494<div class="memdoc">
495
496<p>Builds a matrix which transforms a normalized Device Coordinate to Device Coordinates. </p>
497<p>Used to scale &lt;-1,-1&gt;&lt;1,1&gt; to viewport, for example from &lt;-1,-1&gt; &lt;1,1&gt; to the viewport &lt;0,0&gt;&lt;0,640&gt; </p>
498
499<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01913">1913</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
500
501<p>References <a class="el" href="rect_8h_source.html#l00190">irr::core::rect&lt; T &gt;::getHeight()</a>, <a class="el" href="rect_8h_source.html#l00184">irr::core::rect&lt; T &gt;::getWidth()</a>, <a class="el" href="rect_8h_source.html#l00267">irr::core::rect&lt; T &gt;::LowerRightCorner</a>, and <a class="el" href="rect_8h_source.html#l00265">irr::core::rect&lt; T &gt;::UpperLeftCorner</a>.</p>
502
503</div>
504</div>
505<a class="anchor" id="ae4a0618e2da724a26a5d8a201a63d8a5"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixOrthoLH" ref="ae4a0618e2da724a26a5d8a201a63d8a5" args="(f32 widthOfViewVolume, f32 heightOfViewVolume, f32 zNear, f32 zFar)" -->
506<div class="memitem">
507<div class="memproto">
508<div class="memtemplate">
509template&lt;class T &gt; </div>
510 <table class="memname">
511 <tr>
512 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixOrthoLH </td>
513 <td>(</td>
514 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
515 <td class="paramname"><em>widthOfViewVolume</em>, </td>
516 </tr>
517 <tr>
518 <td class="paramkey"></td>
519 <td></td>
520 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
521 <td class="paramname"><em>heightOfViewVolume</em>, </td>
522 </tr>
523 <tr>
524 <td class="paramkey"></td>
525 <td></td>
526 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
527 <td class="paramname"><em>zNear</em>, </td>
528 </tr>
529 <tr>
530 <td class="paramkey"></td>
531 <td></td>
532 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
533 <td class="paramname"><em>zFar</em>&#160;</td>
534 </tr>
535 <tr>
536 <td></td>
537 <td>)</td>
538 <td></td><td><code> [inline]</code></td>
539 </tr>
540 </table>
541</div>
542<div class="memdoc">
543
544<p>Builds a left-handed orthogonal projection matrix. </p>
545
546<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01604">1604</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
547
548<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>.</p>
549
550</div>
551</div>
552<a class="anchor" id="ae7a837a3b2d86bfc830d25c6144b7a46"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixOrthoRH" ref="ae7a837a3b2d86bfc830d25c6144b7a46" args="(f32 widthOfViewVolume, f32 heightOfViewVolume, f32 zNear, f32 zFar)" -->
553<div class="memitem">
554<div class="memproto">
555<div class="memtemplate">
556template&lt;class T &gt; </div>
557 <table class="memname">
558 <tr>
559 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixOrthoRH </td>
560 <td>(</td>
561 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
562 <td class="paramname"><em>widthOfViewVolume</em>, </td>
563 </tr>
564 <tr>
565 <td class="paramkey"></td>
566 <td></td>
567 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
568 <td class="paramname"><em>heightOfViewVolume</em>, </td>
569 </tr>
570 <tr>
571 <td class="paramkey"></td>
572 <td></td>
573 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
574 <td class="paramname"><em>zNear</em>, </td>
575 </tr>
576 <tr>
577 <td class="paramkey"></td>
578 <td></td>
579 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
580 <td class="paramname"><em>zFar</em>&#160;</td>
581 </tr>
582 <tr>
583 <td></td>
584 <td>)</td>
585 <td></td><td><code> [inline]</code></td>
586 </tr>
587 </table>
588</div>
589<div class="memdoc">
590
591<p>Builds a right-handed orthogonal projection matrix. </p>
592
593<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01639">1639</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
594
595<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>.</p>
596
597</div>
598</div>
599<a class="anchor" id="a3e4c3f6c545dd522f9f09177259f2f18"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixPerspectiveFovInfinityLH" ref="a3e4c3f6c545dd522f9f09177259f2f18" args="(f32 fieldOfViewRadians, f32 aspectRatio, f32 zNear, f32 epsilon=0)" -->
600<div class="memitem">
601<div class="memproto">
602<div class="memtemplate">
603template&lt;class T &gt; </div>
604 <table class="memname">
605 <tr>
606 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixPerspectiveFovInfinityLH </td>
607 <td>(</td>
608 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
609 <td class="paramname"><em>fieldOfViewRadians</em>, </td>
610 </tr>
611 <tr>
612 <td class="paramkey"></td>
613 <td></td>
614 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
615 <td class="paramname"><em>aspectRatio</em>, </td>
616 </tr>
617 <tr>
618 <td class="paramkey"></td>
619 <td></td>
620 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
621 <td class="paramname"><em>zNear</em>, </td>
622 </tr>
623 <tr>
624 <td class="paramkey"></td>
625 <td></td>
626 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
627 <td class="paramname"><em>epsilon</em> = <code>0</code>&#160;</td>
628 </tr>
629 <tr>
630 <td></td>
631 <td>)</td>
632 <td></td><td><code> [inline]</code></td>
633 </tr>
634 </table>
635</div>
636<div class="memdoc">
637
638<p>Builds a left-handed perspective projection matrix based on a field of view, with far plane at infinity. </p>
639
640<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01568">1568</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
641
642<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>, and <a class="el" href="irr_math_8h_source.html#l00535">irr::core::reciprocal()</a>.</p>
643
644</div>
645</div>
646<a class="anchor" id="a1895b967a8f8c9d7ad90fe5434f2499f"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixPerspectiveFovLH" ref="a1895b967a8f8c9d7ad90fe5434f2499f" args="(f32 fieldOfViewRadians, f32 aspectRatio, f32 zNear, f32 zFar)" -->
647<div class="memitem">
648<div class="memproto">
649<div class="memtemplate">
650template&lt;class T &gt; </div>
651 <table class="memname">
652 <tr>
653 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixPerspectiveFovLH </td>
654 <td>(</td>
655 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
656 <td class="paramname"><em>fieldOfViewRadians</em>, </td>
657 </tr>
658 <tr>
659 <td class="paramkey"></td>
660 <td></td>
661 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
662 <td class="paramname"><em>aspectRatio</em>, </td>
663 </tr>
664 <tr>
665 <td class="paramkey"></td>
666 <td></td>
667 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
668 <td class="paramname"><em>zNear</em>, </td>
669 </tr>
670 <tr>
671 <td class="paramkey"></td>
672 <td></td>
673 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
674 <td class="paramname"><em>zFar</em>&#160;</td>
675 </tr>
676 <tr>
677 <td></td>
678 <td>)</td>
679 <td></td><td><code> [inline]</code></td>
680 </tr>
681 </table>
682</div>
683<div class="memdoc">
684
685<p>Builds a left-handed perspective projection matrix based on a field of view. </p>
686
687<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01531">1531</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
688
689<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>, and <a class="el" href="irr_math_8h_source.html#l00535">irr::core::reciprocal()</a>.</p>
690
691</div>
692</div>
693<a class="anchor" id="a5bea6c6f5479720841cea61651e35879"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixPerspectiveFovRH" ref="a5bea6c6f5479720841cea61651e35879" args="(f32 fieldOfViewRadians, f32 aspectRatio, f32 zNear, f32 zFar)" -->
694<div class="memitem">
695<div class="memproto">
696<div class="memtemplate">
697template&lt;class T &gt; </div>
698 <table class="memname">
699 <tr>
700 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixPerspectiveFovRH </td>
701 <td>(</td>
702 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
703 <td class="paramname"><em>fieldOfViewRadians</em>, </td>
704 </tr>
705 <tr>
706 <td class="paramkey"></td>
707 <td></td>
708 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
709 <td class="paramname"><em>aspectRatio</em>, </td>
710 </tr>
711 <tr>
712 <td class="paramkey"></td>
713 <td></td>
714 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
715 <td class="paramname"><em>zNear</em>, </td>
716 </tr>
717 <tr>
718 <td class="paramkey"></td>
719 <td></td>
720 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
721 <td class="paramname"><em>zFar</em>&#160;</td>
722 </tr>
723 <tr>
724 <td></td>
725 <td>)</td>
726 <td></td><td><code> [inline]</code></td>
727 </tr>
728 </table>
729</div>
730<div class="memdoc">
731
732<p>Builds a right-handed perspective projection matrix based on a field of view. </p>
733
734<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01492">1492</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
735
736<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>, and <a class="el" href="irr_math_8h_source.html#l00535">irr::core::reciprocal()</a>.</p>
737
738</div>
739</div>
740<a class="anchor" id="a8306f02451b06f8e6710f23631654086"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixPerspectiveLH" ref="a8306f02451b06f8e6710f23631654086" args="(f32 widthOfViewVolume, f32 heightOfViewVolume, f32 zNear, f32 zFar)" -->
741<div class="memitem">
742<div class="memproto">
743<div class="memtemplate">
744template&lt;class T &gt; </div>
745 <table class="memname">
746 <tr>
747 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixPerspectiveLH </td>
748 <td>(</td>
749 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
750 <td class="paramname"><em>widthOfViewVolume</em>, </td>
751 </tr>
752 <tr>
753 <td class="paramkey"></td>
754 <td></td>
755 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
756 <td class="paramname"><em>heightOfViewVolume</em>, </td>
757 </tr>
758 <tr>
759 <td class="paramkey"></td>
760 <td></td>
761 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
762 <td class="paramname"><em>zNear</em>, </td>
763 </tr>
764 <tr>
765 <td class="paramkey"></td>
766 <td></td>
767 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
768 <td class="paramname"><em>zFar</em>&#160;</td>
769 </tr>
770 <tr>
771 <td></td>
772 <td>)</td>
773 <td></td><td><code> [inline]</code></td>
774 </tr>
775 </table>
776</div>
777<div class="memdoc">
778
779<p>Builds a left-handed perspective projection matrix. </p>
780
781<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01709">1709</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
782
783<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>.</p>
784
785</div>
786</div>
787<a class="anchor" id="a649a29922f622503399bcb16c97b78b4"></a><!-- doxytag: member="irr::core::CMatrix4::buildProjectionMatrixPerspectiveRH" ref="a649a29922f622503399bcb16c97b78b4" args="(f32 widthOfViewVolume, f32 heightOfViewVolume, f32 zNear, f32 zFar)" -->
788<div class="memitem">
789<div class="memproto">
790<div class="memtemplate">
791template&lt;class T &gt; </div>
792 <table class="memname">
793 <tr>
794 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildProjectionMatrixPerspectiveRH </td>
795 <td>(</td>
796 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
797 <td class="paramname"><em>widthOfViewVolume</em>, </td>
798 </tr>
799 <tr>
800 <td class="paramkey"></td>
801 <td></td>
802 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
803 <td class="paramname"><em>heightOfViewVolume</em>, </td>
804 </tr>
805 <tr>
806 <td class="paramkey"></td>
807 <td></td>
808 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
809 <td class="paramname"><em>zNear</em>, </td>
810 </tr>
811 <tr>
812 <td class="paramkey"></td>
813 <td></td>
814 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
815 <td class="paramname"><em>zFar</em>&#160;</td>
816 </tr>
817 <tr>
818 <td></td>
819 <td>)</td>
820 <td></td><td><code> [inline]</code></td>
821 </tr>
822 </table>
823</div>
824<div class="memdoc">
825
826<p>Builds a right-handed perspective projection matrix. </p>
827
828<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01674">1674</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
829
830<p>References <a class="el" href="irr_types_8h_source.html#l00178">_IRR_DEBUG_BREAK_IF</a>.</p>
831
832</div>
833</div>
834<a class="anchor" id="a4802c6a89ad813e2919f68f512fb320f"></a><!-- doxytag: member="irr::core::CMatrix4::buildRotateFromTo" ref="a4802c6a89ad813e2919f68f512fb320f" args="(const core::vector3df &amp;from, const core::vector3df &amp;to)" -->
835<div class="memitem">
836<div class="memproto">
837<div class="memtemplate">
838template&lt;class T &gt; </div>
839 <table class="memname">
840 <tr>
841 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildRotateFromTo </td>
842 <td>(</td>
843 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
844 <td class="paramname"><em>from</em>, </td>
845 </tr>
846 <tr>
847 <td class="paramkey"></td>
848 <td></td>
849 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
850 <td class="paramname"><em>to</em>&#160;</td>
851 </tr>
852 <tr>
853 <td></td>
854 <td>)</td>
855 <td></td><td><code> [inline]</code></td>
856 </tr>
857 </table>
858</div>
859<div class="memdoc">
860
861<p>Builds a matrix that rotates from one vector to another. </p>
862<dl><dt><b>Parameters:</b></dt><dd>
863 <table class="params">
864 <tr><td class="paramname">from,:</td><td>vector to rotate from </td></tr>
865 <tr><td class="paramname">to,:</td><td>vector to rotate to</td></tr>
866 <tr><td class="paramname">from,:</td><td>vector to rotate from </td></tr>
867 <tr><td class="paramname">to,:</td><td>vector to rotate to</td></tr>
868 </table>
869 </dd>
870</dl>
871<p><a href="http://www.euclideanspace.com/maths/geometry/rotations/conversions/angleToMatrix/index.htm">http://www.euclideanspace.com/maths/geometry/rotations/conversions/angleToMatrix/index.htm</a> </p>
872
873<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01934">1934</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
874
875<p>References <a class="el" href="vector3d_8h_source.html#l00147">irr::core::vector3d&lt; T &gt;::crossProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00125">irr::core::vector3d&lt; T &gt;::dotProduct()</a>, <a class="el" href="vector3d_8h_source.html#l00168">irr::core::vector3d&lt; T &gt;::normalize()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
876
877</div>
878</div>
879<a class="anchor" id="a583d0ece1d80f69101660e1cbe441768"></a><!-- doxytag: member="irr::core::CMatrix4::buildShadowMatrix" ref="a583d0ece1d80f69101660e1cbe441768" args="(const core::vector3df &amp;light, core::plane3df plane, f32 point=1.0f)" -->
880<div class="memitem">
881<div class="memproto">
882<div class="memtemplate">
883template&lt;class T &gt; </div>
884 <table class="memname">
885 <tr>
886 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildShadowMatrix </td>
887 <td>(</td>
888 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
889 <td class="paramname"><em>light</em>, </td>
890 </tr>
891 <tr>
892 <td class="paramkey"></td>
893 <td></td>
894 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#ae7491b7985dcb74b840bfcd9c054b232">core::plane3df</a>&#160;</td>
895 <td class="paramname"><em>plane</em>, </td>
896 </tr>
897 <tr>
898 <td class="paramkey"></td>
899 <td></td>
900 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
901 <td class="paramname"><em>point</em> = <code>1.0f</code>&#160;</td>
902 </tr>
903 <tr>
904 <td></td>
905 <td>)</td>
906 <td></td><td><code> [inline]</code></td>
907 </tr>
908 </table>
909</div>
910<div class="memdoc">
911
912<p>Builds a matrix that flattens geometry into a plane. </p>
913<dl><dt><b>Parameters:</b></dt><dd>
914 <table class="params">
915 <tr><td class="paramname">light,:</td><td>light source </td></tr>
916 <tr><td class="paramname">plane,:</td><td>plane into which the geometry if flattened into </td></tr>
917 <tr><td class="paramname">point,:</td><td>value between 0 and 1, describing the light source. If this is 1, it is a point light, if it is 0, it is a directional light. </td></tr>
918 </table>
919 </dd>
920</dl>
921
922<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01743">1743</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
923
924<p>References <a class="el" href="plane3d_8h_source.html#l00231">irr::core::plane3d&lt; T &gt;::D</a>, <a class="el" href="vector3d_8h_source.html#l00125">irr::core::vector3d&lt; T &gt;::dotProduct()</a>, <a class="el" href="plane3d_8h_source.html#l00228">irr::core::plane3d&lt; T &gt;::Normal</a>, <a class="el" href="vector3d_8h_source.html#l00168">irr::core::vector3d&lt; T &gt;::normalize()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
925
926</div>
927</div>
928<a class="anchor" id="afc72faaf2c883d9c0fdc1e0940d1acde"></a><!-- doxytag: member="irr::core::CMatrix4::buildTextureTransform" ref="afc72faaf2c883d9c0fdc1e0940d1acde" args="(f32 rotateRad, const core::vector2df &amp;rotatecenter, const core::vector2df &amp;translate, const core::vector2df &amp;scale)" -->
929<div class="memitem">
930<div class="memproto">
931<div class="memtemplate">
932template&lt;class T &gt; </div>
933 <table class="memname">
934 <tr>
935 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::buildTextureTransform </td>
936 <td>(</td>
937 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
938 <td class="paramname"><em>rotateRad</em>, </td>
939 </tr>
940 <tr>
941 <td class="paramkey"></td>
942 <td></td>
943 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;&#160;</td>
944 <td class="paramname"><em>rotatecenter</em>, </td>
945 </tr>
946 <tr>
947 <td class="paramkey"></td>
948 <td></td>
949 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;&#160;</td>
950 <td class="paramname"><em>translate</em>, </td>
951 </tr>
952 <tr>
953 <td class="paramkey"></td>
954 <td></td>
955 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a2cf08556d77f6f5a792973a6e27ed11b">core::vector2df</a> &amp;&#160;</td>
956 <td class="paramname"><em>scale</em>&#160;</td>
957 </tr>
958 <tr>
959 <td></td>
960 <td>)</td>
961 <td></td><td><code> [inline]</code></td>
962 </tr>
963 </table>
964</div>
965<div class="memdoc">
966
967<p>Set to a texture transformation matrix with the given parameters. </p>
968<p>Generate texture coordinates as linear functions so that: u = Ux*x + Uy*y + Uz*z + Uw v = Vx*x + Vy*y + Vz*z + Vw The matrix M for this case is: Ux Vx 0 0 Uy Vy 0 0 Uz Vz 0 0 Uw Vw 0 0 </p>
969
970<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02065">2065</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
971
972<p>References <a class="el" href="vector2d_8h_source.html#l00316">irr::core::vector2d&lt; T &gt;::X</a>, and <a class="el" href="vector2d_8h_source.html#l00319">irr::core::vector2d&lt; T &gt;::Y</a>.</p>
973
974</div>
975</div>
976<a class="anchor" id="a5342bc1ac46e8bf7e287f1d58ec702c2"></a><!-- doxytag: member="irr::core::CMatrix4::equals" ref="a5342bc1ac46e8bf7e287f1d58ec702c2" args="(const core::CMatrix4&lt; T &gt; &amp;other, const T tolerance=(T) ROUNDING_ERROR_f64) const " -->
977<div class="memitem">
978<div class="memproto">
979<div class="memtemplate">
980template&lt;class T &gt; </div>
981 <table class="memname">
982 <tr>
983 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::equals </td>
984 <td>(</td>
985 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
986 <td class="paramname"><em>other</em>, </td>
987 </tr>
988 <tr>
989 <td class="paramkey"></td>
990 <td></td>
991 <td class="paramtype">const T&#160;</td>
992 <td class="paramname"><em>tolerance</em> = <code>(T)<a class="el" href="namespaceirr_1_1core.html#a7b314c22d6804639cbcbce5231724f0b">ROUNDING_ERROR_f64</a></code>&#160;</td>
993 </tr>
994 <tr>
995 <td></td>
996 <td>)</td>
997 <td></td><td> const<code> [inline]</code></td>
998 </tr>
999 </table>
1000</div>
1001<div class="memdoc">
1002
1003<p>Compare two matrices using the equal method. </p>
1004
1005<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02210">2210</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1006
1007<p>References <a class="el" href="irr_math_8h_source.html#l00185">irr::core::equals()</a>.</p>
1008
1009</div>
1010</div>
1011<a class="anchor" id="ab91cb550bdacbc7b79a47d5b4ee5f4fa"></a><!-- doxytag: member="irr::core::CMatrix4::getDefinitelyIdentityMatrix" ref="ab91cb550bdacbc7b79a47d5b4ee5f4fa" args="() const " -->
1012<div class="memitem">
1013<div class="memproto">
1014<div class="memtemplate">
1015template&lt;class T &gt; </div>
1016 <table class="memname">
1017 <tr>
1018 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getDefinitelyIdentityMatrix </td>
1019 <td>(</td>
1020 <td class="paramname"></td><td>)</td>
1021 <td> const<code> [inline]</code></td>
1022 </tr>
1023 </table>
1024</div>
1025<div class="memdoc">
1026
1027<p>Gets if the matrix is definitely identity matrix. </p>
1028
1029<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02198">2198</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1030
1031</div>
1032</div>
1033<a class="anchor" id="a33c110cd75fdddb840a990ab52f10900"></a><!-- doxytag: member="irr::core::CMatrix4::getInverse" ref="a33c110cd75fdddb840a990ab52f10900" args="(CMatrix4&lt; T &gt; &amp;out) const " -->
1034<div class="memitem">
1035<div class="memproto">
1036<div class="memtemplate">
1037template&lt;class T &gt; </div>
1038 <table class="memname">
1039 <tr>
1040 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getInverse </td>
1041 <td>(</td>
1042 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1043 <td class="paramname"><em>out</em></td><td>)</td>
1044 <td> const<code> [inline]</code></td>
1045 </tr>
1046 </table>
1047</div>
1048<div class="memdoc">
1049
1050<p>Gets the inversed matrix of this one. </p>
1051<dl><dt><b>Parameters:</b></dt><dd>
1052 <table class="params">
1053 <tr><td class="paramname">out,:</td><td>where result matrix is written to. </td></tr>
1054 </table>
1055 </dd>
1056</dl>
1057<dl class="return"><dt><b>Returns:</b></dt><dd>Returns false if there is no inverse matrix. </dd></dl>
1058<p>Calculates the inverse of this Matrix The inverse is calculated using Cramers rule. If no inverse exists then 'false' is returned. </p>
1059
1060<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01307">1307</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1061
1062<p>References <a class="el" href="irr_math_8h_source.html#l00035">FLT_MIN</a>, <a class="el" href="irr_math_8h_source.html#l00270">irr::core::iszero()</a>, and <a class="el" href="irr_math_8h_source.html#l00535">irr::core::reciprocal()</a>.</p>
1063
1064<p>Referenced by <a class="el" href="matrix4_8h_source.html#l00440">irr::core::CMatrix4&lt; T &gt;::CMatrix4()</a>.</p>
1065
1066</div>
1067</div>
1068<a class="anchor" id="af8c024c494998296fc7ed63603d7cb62"></a><!-- doxytag: member="irr::core::CMatrix4::getInversePrimitive" ref="af8c024c494998296fc7ed63603d7cb62" args="(CMatrix4&lt; T &gt; &amp;out) const " -->
1069<div class="memitem">
1070<div class="memproto">
1071<div class="memtemplate">
1072template&lt;class T &gt; </div>
1073 <table class="memname">
1074 <tr>
1075 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getInversePrimitive </td>
1076 <td>(</td>
1077 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1078 <td class="paramname"><em>out</em></td><td>)</td>
1079 <td> const<code> [inline]</code></td>
1080 </tr>
1081 </table>
1082</div>
1083<div class="memdoc">
1084
1085<p>Inverts a primitive matrix which only contains a translation and a rotation. </p>
1086<dl><dt><b>Parameters:</b></dt><dd>
1087 <table class="params">
1088 <tr><td class="paramname">out,:</td><td>where result matrix is written to.</td></tr>
1089 </table>
1090 </dd>
1091</dl>
1092<p>Inverts a primitive matrix which only contains a translation and a rotation </p>
1093<dl><dt><b>Parameters:</b></dt><dd>
1094 <table class="params">
1095 <tr><td class="paramname">out,:</td><td>where result matrix is written to. </td></tr>
1096 </table>
1097 </dd>
1098</dl>
1099
1100<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01393">1393</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1101
1102</div>
1103</div>
1104<a class="anchor" id="aa348817a724b49816da5c181ba672e1d"></a><!-- doxytag: member="irr::core::CMatrix4::getRotationDegrees" ref="aa348817a724b49816da5c181ba672e1d" args="() const " -->
1105<div class="memitem">
1106<div class="memproto">
1107<div class="memtemplate">
1108template&lt;class T &gt; </div>
1109 <table class="memname">
1110 <tr>
1111 <td class="memname"><a class="el" href="classirr_1_1core_1_1vector3d.html">core::vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getRotationDegrees </td>
1112 <td>(</td>
1113 <td class="paramname"></td><td>)</td>
1114 <td> const<code> [inline]</code></td>
1115 </tr>
1116 </table>
1117</div>
1118<div class="memdoc">
1119
1120<p>Returns the rotation, as set by setRotation(). </p>
1121<p>Returns a rotation that is equivalent to that set by <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8ee5ef8619d4b0f56d72ac84495ed644" title="Make a rotation matrix from Euler angles. The 4th row and column are unmodified.">setRotationDegrees()</a>.</p>
1122<p>This code was orginally written by by Chev.</p>
1123<p>This code was sent in by Chev. Note that it does not necessarily return the *same* Euler angles as those set by <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a8ee5ef8619d4b0f56d72ac84495ed644" title="Make a rotation matrix from Euler angles. The 4th row and column are unmodified.">setRotationDegrees()</a>, but the rotation will be equivalent, i.e. will have the same result when used to rotate a vector or node. </p>
1124
1125<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00860">860</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1126
1127<p>References <a class="el" href="irr_math_8h_source.html#l00166">irr::core::clamp()</a>, <a class="el" href="irr_math_8h_source.html#l00270">irr::core::iszero()</a>, <a class="el" href="irr_math_8h_source.html#l00083">irr::core::RADTODEG64</a>, <a class="el" href="irr_math_8h_source.html#l00535">irr::core::reciprocal()</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1128
1129</div>
1130</div>
1131<a class="anchor" id="aa29f46680cea92b6d38886d1e9759cdd"></a><!-- doxytag: member="irr::core::CMatrix4::getScale" ref="aa29f46680cea92b6d38886d1e9759cdd" args="() const " -->
1132<div class="memitem">
1133<div class="memproto">
1134<div class="memtemplate">
1135template&lt;class T &gt; </div>
1136 <table class="memname">
1137 <tr>
1138 <td class="memname"><a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getScale </td>
1139 <td>(</td>
1140 <td class="paramname"></td><td>)</td>
1141 <td> const<code> [inline]</code></td>
1142 </tr>
1143 </table>
1144</div>
1145<div class="memdoc">
1146
1147<p>Get Scale. </p>
1148<p>Returns the absolute values of the scales of the matrix.</p>
1149<p>Note that this returns the absolute (positive) values unless only scale is set. Unfortunately it does not appear to be possible to extract any original negative values. The best that we could do would be to arbitrarily make one scale negative if one or three of them were negative. FIXME - return the original values. </p>
1150
1151<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00795">795</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1152
1153<p>References <a class="el" href="irr_math_8h_source.html#l00270">irr::core::iszero()</a>.</p>
1154
1155</div>
1156</div>
1157<a class="anchor" id="aec84b278e87611352b75298238e54006"></a><!-- doxytag: member="irr::core::CMatrix4::getTranslation" ref="aec84b278e87611352b75298238e54006" args="() const " -->
1158<div class="memitem">
1159<div class="memproto">
1160<div class="memtemplate">
1161template&lt;class T &gt; </div>
1162 <table class="memname">
1163 <tr>
1164 <td class="memname"><a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getTranslation </td>
1165 <td>(</td>
1166 <td class="paramname"></td><td>)</td>
1167 <td> const<code> [inline]</code></td>
1168 </tr>
1169 </table>
1170</div>
1171<div class="memdoc">
1172
1173<p>Gets the current translation. </p>
1174
1175<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00744">744</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1176
1177<p>Referenced by <a class="el" href="_i_scene_node_8h_source.html#l00522">irr::scene::ISceneNode::getAbsolutePosition()</a>.</p>
1178
1179</div>
1180</div>
1181<a class="anchor" id="a83e8a629180ab12262d2e2cf52c7991b"></a><!-- doxytag: member="irr::core::CMatrix4::getTransposed" ref="a83e8a629180ab12262d2e2cf52c7991b" args="() const " -->
1182<div class="memitem">
1183<div class="memproto">
1184<div class="memtemplate">
1185template&lt;class T &gt; </div>
1186 <table class="memname">
1187 <tr>
1188 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getTransposed </td>
1189 <td>(</td>
1190 <td class="paramname"></td><td>)</td>
1191 <td> const<code> [inline]</code></td>
1192 </tr>
1193 </table>
1194</div>
1195<div class="memdoc">
1196
1197<p>Gets transposed matrix. </p>
1198
1199<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01874">1874</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1200
1201<p>Referenced by <a class="el" href="matrix4_8h_source.html#l00440">irr::core::CMatrix4&lt; T &gt;::CMatrix4()</a>.</p>
1202
1203</div>
1204</div>
1205<a class="anchor" id="abc4f641ad798591424020e38efe21636"></a><!-- doxytag: member="irr::core::CMatrix4::getTransposed" ref="abc4f641ad798591424020e38efe21636" args="(CMatrix4&lt; T &gt; &amp;dest) const " -->
1206<div class="memitem">
1207<div class="memproto">
1208<div class="memtemplate">
1209template&lt;class T &gt; </div>
1210 <table class="memname">
1211 <tr>
1212 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::getTransposed </td>
1213 <td>(</td>
1214 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1215 <td class="paramname"><em>dest</em></td><td>)</td>
1216 <td> const<code> [inline]</code></td>
1217 </tr>
1218 </table>
1219</div>
1220<div class="memdoc">
1221
1222<p>Gets transposed matrix. </p>
1223
1224<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01884">1884</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1225
1226</div>
1227</div>
1228<a class="anchor" id="a0c9ed4a87ab8a1340e075490cd9de309"></a><!-- doxytag: member="irr::core::CMatrix4::interpolate" ref="a0c9ed4a87ab8a1340e075490cd9de309" args="(const core::CMatrix4&lt; T &gt; &amp;b, f32 time) const " -->
1229<div class="memitem">
1230<div class="memproto">
1231<div class="memtemplate">
1232template&lt;class T &gt; </div>
1233 <table class="memname">
1234 <tr>
1235 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::interpolate </td>
1236 <td>(</td>
1237 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">core::CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1238 <td class="paramname"><em>b</em>, </td>
1239 </tr>
1240 <tr>
1241 <td class="paramkey"></td>
1242 <td></td>
1243 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
1244 <td class="paramname"><em>time</em>&#160;</td>
1245 </tr>
1246 <tr>
1247 <td></td>
1248 <td>)</td>
1249 <td></td><td> const<code> [inline]</code></td>
1250 </tr>
1251 </table>
1252</div>
1253<div class="memdoc">
1254
1255<p>Creates a new matrix as interpolated matrix from two other ones. </p>
1256<dl><dt><b>Parameters:</b></dt><dd>
1257 <table class="params">
1258 <tr><td class="paramname">b,:</td><td>other matrix to interpolate with </td></tr>
1259 <tr><td class="paramname">time,:</td><td>Must be a value between 0 and 1. </td></tr>
1260 </table>
1261 </dd>
1262</dl>
1263
1264<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01857">1857</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1265
1266</div>
1267</div>
1268<a class="anchor" id="a7996bee0d3056d6647dc9cc840ed0ad8"></a><!-- doxytag: member="irr::core::CMatrix4::inverseRotateVect" ref="a7996bee0d3056d6647dc9cc840ed0ad8" args="(vector3df &amp;vect) const " -->
1269<div class="memitem">
1270<div class="memproto">
1271<div class="memtemplate">
1272template&lt;class T &gt; </div>
1273 <table class="memname">
1274 <tr>
1275 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::inverseRotateVect </td>
1276 <td>(</td>
1277 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
1278 <td class="paramname"><em>vect</em></td><td>)</td>
1279 <td> const<code> [inline]</code></td>
1280 </tr>
1281 </table>
1282</div>
1283<div class="memdoc">
1284
1285<p>Rotate a vector by the inverse of the rotation part of this matrix. </p>
1286
1287<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01128">1128</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1288
1289<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1290
1291</div>
1292</div>
1293<a class="anchor" id="a83bf069639e0538f047041ae51042907"></a><!-- doxytag: member="irr::core::CMatrix4::inverseTranslateVect" ref="a83bf069639e0538f047041ae51042907" args="(vector3df &amp;vect) const " -->
1294<div class="memitem">
1295<div class="memproto">
1296<div class="memtemplate">
1297template&lt;class T &gt; </div>
1298 <table class="memname">
1299 <tr>
1300 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::inverseTranslateVect </td>
1301 <td>(</td>
1302 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
1303 <td class="paramname"><em>vect</em></td><td>)</td>
1304 <td> const<code> [inline]</code></td>
1305 </tr>
1306 </table>
1307</div>
1308<div class="memdoc">
1309
1310<p>Translate a vector by the inverse of the translation part of this matrix. </p>
1311
1312<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01290">1290</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1313
1314<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1315
1316</div>
1317</div>
1318<a class="anchor" id="a24e7bc5d302f6c0cb11bad0771a40826"></a><!-- doxytag: member="irr::core::CMatrix4::isIdentity" ref="a24e7bc5d302f6c0cb11bad0771a40826" args="() const " -->
1319<div class="memitem">
1320<div class="memproto">
1321<div class="memtemplate">
1322template&lt;class T &gt; </div>
1323 <table class="memname">
1324 <tr>
1325 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::isIdentity </td>
1326 <td>(</td>
1327 <td class="paramname"></td><td>)</td>
1328 <td> const<code> [inline]</code></td>
1329 </tr>
1330 </table>
1331</div>
1332<div class="memdoc">
1333
1334<p>Returns true if the matrix is the identity matrix. </p>
1335
1336<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01000">1000</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1337
1338<p>References <a class="el" href="irr_math_8h_source.html#l00185">irr::core::equals()</a>.</p>
1339
1340<p>Referenced by <a class="el" href="matrix4_8h_source.html#l00705">irr::core::CMatrix4&lt; T &gt;::operator*()</a>, <a class="el" href="matrix4_8h_source.html#l00626">irr::core::CMatrix4&lt; T &gt;::operator*=()</a>, and <a class="el" href="matrix4_8h_source.html#l00688">irr::core::CMatrix4&lt; T &gt;::setbyproduct()</a>.</p>
1341
1342</div>
1343</div>
1344<a class="anchor" id="ab4b515a697bb3749a8e1dd9fc31342bd"></a><!-- doxytag: member="irr::core::CMatrix4::isIdentity_integer_base" ref="ab4b515a697bb3749a8e1dd9fc31342bd" args="() const " -->
1345<div class="memitem">
1346<div class="memproto">
1347<div class="memtemplate">
1348template&lt;class T &gt; </div>
1349 <table class="memname">
1350 <tr>
1351 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::isIdentity_integer_base </td>
1352 <td>(</td>
1353 <td class="paramname"></td><td>)</td>
1354 <td> const<code> [inline]</code></td>
1355 </tr>
1356 </table>
1357</div>
1358<div class="memdoc">
1359
1360<p>Returns true if the matrix is the identity matrix. </p>
1361
1362<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01067">1067</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1363
1364<p>References <a class="el" href="irr_math_8h_source.html#l00344">F32_VALUE_1</a>, and <a class="el" href="irr_math_8h_source.html#l00353">irr::core::IR()</a>.</p>
1365
1366</div>
1367</div>
1368<a class="anchor" id="afc4fe0bdfb771b15eff91264c0ed37f9"></a><!-- doxytag: member="irr::core::CMatrix4::isOrthogonal" ref="afc4fe0bdfb771b15eff91264c0ed37f9" args="() const " -->
1369<div class="memitem">
1370<div class="memproto">
1371<div class="memtemplate">
1372template&lt;class T &gt; </div>
1373 <table class="memname">
1374 <tr>
1375 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::isOrthogonal </td>
1376 <td>(</td>
1377 <td class="paramname"></td><td>)</td>
1378 <td> const<code> [inline]</code></td>
1379 </tr>
1380 </table>
1381</div>
1382<div class="memdoc">
1383
1384<p>Returns true if the matrix is orthogonal. </p>
1385
1386<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01038">1038</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1387
1388<p>References <a class="el" href="irr_math_8h_source.html#l00270">irr::core::iszero()</a>.</p>
1389
1390</div>
1391</div>
1392<a class="anchor" id="a45f876ed1aed2c3c98b87fee6d938604"></a><!-- doxytag: member="irr::core::CMatrix4::makeIdentity" ref="a45f876ed1aed2c3c98b87fee6d938604" args="()" -->
1393<div class="memitem">
1394<div class="memproto">
1395<div class="memtemplate">
1396template&lt;class T &gt; </div>
1397 <table class="memname">
1398 <tr>
1399 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::makeIdentity </td>
1400 <td>(</td>
1401 <td class="paramname"></td><td>)</td>
1402 <td><code> [inline]</code></td>
1403 </tr>
1404 </table>
1405</div>
1406<div class="memdoc">
1407
1408<p>Set matrix to identity. </p>
1409
1410<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00984">984</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1411
1412</div>
1413</div>
1414<a class="anchor" id="a3fbface2cb6b959af64f82a5bb17540e"></a><!-- doxytag: member="irr::core::CMatrix4::makeInverse" ref="a3fbface2cb6b959af64f82a5bb17540e" args="()" -->
1415<div class="memitem">
1416<div class="memproto">
1417<div class="memtemplate">
1418template&lt;class T &gt; </div>
1419 <table class="memname">
1420 <tr>
1421 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::makeInverse </td>
1422 <td>(</td>
1423 <td class="paramname"></td><td>)</td>
1424 <td><code> [inline]</code></td>
1425 </tr>
1426 </table>
1427</div>
1428<div class="memdoc">
1429
1430<p>Calculates inverse of matrix. Slow. </p>
1431<dl class="return"><dt><b>Returns:</b></dt><dd>Returns false if there is no inverse matrix. </dd></dl>
1432
1433<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01424">1424</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1434
1435</div>
1436</div>
1437<a class="anchor" id="a1e1f04cdf57dc76be2875427498a0d62"></a><!-- doxytag: member="irr::core::CMatrix4::multiplyWith1x4Matrix" ref="a1e1f04cdf57dc76be2875427498a0d62" args="(T *matrix) const " -->
1438<div class="memitem">
1439<div class="memproto">
1440<div class="memtemplate">
1441template&lt;class T &gt; </div>
1442 <table class="memname">
1443 <tr>
1444 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::multiplyWith1x4Matrix </td>
1445 <td>(</td>
1446 <td class="paramtype">T *&#160;</td>
1447 <td class="paramname"><em>matrix</em></td><td>)</td>
1448 <td> const<code> [inline]</code></td>
1449 </tr>
1450 </table>
1451</div>
1452<div class="memdoc">
1453
1454<p>Multiplies this matrix by a 1x4 matrix. </p>
1455
1456<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01268">1268</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1457
1458</div>
1459</div>
1460<a class="anchor" id="a99b4c127f31033b5f7314b98164b99ed"></a><!-- doxytag: member="irr::core::CMatrix4::operator!=" ref="a99b4c127f31033b5f7314b98164b99ed" args="(const CMatrix4&lt; T &gt; &amp;other) const " -->
1461<div class="memitem">
1462<div class="memproto">
1463<div class="memtemplate">
1464template&lt;class T &gt; </div>
1465 <table class="memname">
1466 <tr>
1467 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator!= </td>
1468 <td>(</td>
1469 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1470 <td class="paramname"><em>other</em></td><td>)</td>
1471 <td> const<code> [inline]</code></td>
1472 </tr>
1473 </table>
1474</div>
1475<div class="memdoc">
1476
1477<p>Returns true if other matrix is not equal to this matrix. </p>
1478
1479<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01484">1484</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1480
1481</div>
1482</div>
1483<a class="anchor" id="aaede6824ed3ee05b928815d52e1834d1"></a><!-- doxytag: member="irr::core::CMatrix4::operator()" ref="aaede6824ed3ee05b928815d52e1834d1" args="(const s32 row, const s32 col)" -->
1484<div class="memitem">
1485<div class="memproto">
1486<div class="memtemplate">
1487template&lt;class T&gt; </div>
1488 <table class="memname">
1489 <tr>
1490 <td class="memname">T&amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator() </td>
1491 <td>(</td>
1492 <td class="paramtype">const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
1493 <td class="paramname"><em>row</em>, </td>
1494 </tr>
1495 <tr>
1496 <td class="paramkey"></td>
1497 <td></td>
1498 <td class="paramtype">const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
1499 <td class="paramname"><em>col</em>&#160;</td>
1500 </tr>
1501 <tr>
1502 <td></td>
1503 <td>)</td>
1504 <td></td><td><code> [inline]</code></td>
1505 </tr>
1506 </table>
1507</div>
1508<div class="memdoc">
1509
1510<p>Simple operator for directly accessing every element of the matrix. </p>
1511
1512<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00069">69</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1513
1514</div>
1515</div>
1516<a class="anchor" id="a370e3a1ed88e95011125d09943b50e3b"></a><!-- doxytag: member="irr::core::CMatrix4::operator()" ref="a370e3a1ed88e95011125d09943b50e3b" args="(const s32 row, const s32 col) const " -->
1517<div class="memitem">
1518<div class="memproto">
1519<div class="memtemplate">
1520template&lt;class T&gt; </div>
1521 <table class="memname">
1522 <tr>
1523 <td class="memname">const T&amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator() </td>
1524 <td>(</td>
1525 <td class="paramtype">const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
1526 <td class="paramname"><em>row</em>, </td>
1527 </tr>
1528 <tr>
1529 <td class="paramkey"></td>
1530 <td></td>
1531 <td class="paramtype">const <a class="el" href="namespaceirr.html#ac66849b7a6ed16e30ebede579f9b47c6">s32</a>&#160;</td>
1532 <td class="paramname"><em>col</em>&#160;</td>
1533 </tr>
1534 <tr>
1535 <td></td>
1536 <td>)</td>
1537 <td></td><td> const<code> [inline]</code></td>
1538 </tr>
1539 </table>
1540</div>
1541<div class="memdoc">
1542
1543<p>Simple operator for directly accessing every element of the matrix. </p>
1544
1545<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00078">78</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1546
1547</div>
1548</div>
1549<a class="anchor" id="a4173ab9beecf99940ba2eb01081f1613"></a><!-- doxytag: member="irr::core::CMatrix4::operator*" ref="a4173ab9beecf99940ba2eb01081f1613" args="(const CMatrix4&lt; T &gt; &amp;other) const " -->
1550<div class="memitem">
1551<div class="memproto">
1552<div class="memtemplate">
1553template&lt;class T &gt; </div>
1554 <table class="memname">
1555 <tr>
1556 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator* </td>
1557 <td>(</td>
1558 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1559 <td class="paramname"><em>other</em></td><td>)</td>
1560 <td> const<code> [inline]</code></td>
1561 </tr>
1562 </table>
1563</div>
1564<div class="memdoc">
1565
1566<p>Multiply by another matrix. </p>
1567<p>multiply by another matrix</p>
1568<p>Calculate other*this </p>
1569
1570<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00705">705</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1571
1572<p>References <a class="el" href="matrix4_8h_source.html#l01000">irr::core::CMatrix4&lt; T &gt;::isIdentity()</a>.</p>
1573
1574</div>
1575</div>
1576<a class="anchor" id="a2695d5d90aa8cf55e06649fc83752466"></a><!-- doxytag: member="irr::core::CMatrix4::operator*" ref="a2695d5d90aa8cf55e06649fc83752466" args="(const T &amp;scalar) const " -->
1577<div class="memitem">
1578<div class="memproto">
1579<div class="memtemplate">
1580template&lt;class T &gt; </div>
1581 <table class="memname">
1582 <tr>
1583 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator* </td>
1584 <td>(</td>
1585 <td class="paramtype">const T &amp;&#160;</td>
1586 <td class="paramname"><em>scalar</em></td><td>)</td>
1587 <td> const<code> [inline]</code></td>
1588 </tr>
1589 </table>
1590</div>
1591<div class="memdoc">
1592
1593<p>Multiply by scalar. </p>
1594
1595<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00576">576</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1596
1597</div>
1598</div>
1599<a class="anchor" id="ac3d29f86c91d9d095ab155ecb8870f87"></a><!-- doxytag: member="irr::core::CMatrix4::operator*=" ref="ac3d29f86c91d9d095ab155ecb8870f87" args="(const CMatrix4&lt; T &gt; &amp;other)" -->
1600<div class="memitem">
1601<div class="memproto">
1602<div class="memtemplate">
1603template&lt;class T &gt; </div>
1604 <table class="memname">
1605 <tr>
1606 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator*= </td>
1607 <td>(</td>
1608 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1609 <td class="paramname"><em>other</em></td><td>)</td>
1610 <td><code> [inline]</code></td>
1611 </tr>
1612 </table>
1613</div>
1614<div class="memdoc">
1615
1616<p>Multiply by another matrix. </p>
1617<p>Calculate and return other*this </p>
1618
1619<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00626">626</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1620
1621<p>References <a class="el" href="matrix4_8h_source.html#l01000">irr::core::CMatrix4&lt; T &gt;::isIdentity()</a>.</p>
1622
1623</div>
1624</div>
1625<a class="anchor" id="ae78879a3d7f0113ba5208d5476c3af9c"></a><!-- doxytag: member="irr::core::CMatrix4::operator*=" ref="ae78879a3d7f0113ba5208d5476c3af9c" args="(const T &amp;scalar)" -->
1626<div class="memitem">
1627<div class="memproto">
1628<div class="memtemplate">
1629template&lt;class T &gt; </div>
1630 <table class="memname">
1631 <tr>
1632 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator*= </td>
1633 <td>(</td>
1634 <td class="paramtype">const T &amp;&#160;</td>
1635 <td class="paramname"><em>scalar</em></td><td>)</td>
1636 <td><code> [inline]</code></td>
1637 </tr>
1638 </table>
1639</div>
1640<div class="memdoc">
1641
1642<p>Multiply by scalar. </p>
1643
1644<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00602">602</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1645
1646</div>
1647</div>
1648<a class="anchor" id="ac2192a7d9dd89dcd23fe2f9ded3252bf"></a><!-- doxytag: member="irr::core::CMatrix4::operator+" ref="ac2192a7d9dd89dcd23fe2f9ded3252bf" args="(const CMatrix4&lt; T &gt; &amp;other) const " -->
1649<div class="memitem">
1650<div class="memproto">
1651<div class="memtemplate">
1652template&lt;class T &gt; </div>
1653 <table class="memname">
1654 <tr>
1655 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator+ </td>
1656 <td>(</td>
1657 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1658 <td class="paramname"><em>other</em></td><td>)</td>
1659 <td> const<code> [inline]</code></td>
1660 </tr>
1661 </table>
1662</div>
1663<div class="memdoc">
1664
1665<p>Add another matrix. </p>
1666
1667<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00476">476</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1668
1669</div>
1670</div>
1671<a class="anchor" id="af91c5be0562ce4be3f8feedd3d017ba1"></a><!-- doxytag: member="irr::core::CMatrix4::operator+=" ref="af91c5be0562ce4be3f8feedd3d017ba1" args="(const CMatrix4&lt; T &gt; &amp;other)" -->
1672<div class="memitem">
1673<div class="memproto">
1674<div class="memtemplate">
1675template&lt;class T &gt; </div>
1676 <table class="memname">
1677 <tr>
1678 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator+= </td>
1679 <td>(</td>
1680 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1681 <td class="paramname"><em>other</em></td><td>)</td>
1682 <td><code> [inline]</code></td>
1683 </tr>
1684 </table>
1685</div>
1686<div class="memdoc">
1687
1688<p>Add another matrix. </p>
1689
1690<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00502">502</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1691
1692</div>
1693</div>
1694<a class="anchor" id="aee45563e7f9fdf3d4ef7f5a9d63d87c0"></a><!-- doxytag: member="irr::core::CMatrix4::operator&#45;" ref="aee45563e7f9fdf3d4ef7f5a9d63d87c0" args="(const CMatrix4&lt; T &gt; &amp;other) const " -->
1695<div class="memitem">
1696<div class="memproto">
1697<div class="memtemplate">
1698template&lt;class T &gt; </div>
1699 <table class="memname">
1700 <tr>
1701 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator- </td>
1702 <td>(</td>
1703 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1704 <td class="paramname"><em>other</em></td><td>)</td>
1705 <td> const<code> [inline]</code></td>
1706 </tr>
1707 </table>
1708</div>
1709<div class="memdoc">
1710
1711<p>Subtract another matrix. </p>
1712
1713<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00526">526</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1714
1715</div>
1716</div>
1717<a class="anchor" id="a24eb7faa1418765ba87d3f02f27d643f"></a><!-- doxytag: member="irr::core::CMatrix4::operator&#45;=" ref="a24eb7faa1418765ba87d3f02f27d643f" args="(const CMatrix4&lt; T &gt; &amp;other)" -->
1718<div class="memitem">
1719<div class="memproto">
1720<div class="memtemplate">
1721template&lt;class T &gt; </div>
1722 <table class="memname">
1723 <tr>
1724 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator-= </td>
1725 <td>(</td>
1726 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1727 <td class="paramname"><em>other</em></td><td>)</td>
1728 <td><code> [inline]</code></td>
1729 </tr>
1730 </table>
1731</div>
1732<div class="memdoc">
1733
1734<p>Subtract another matrix. </p>
1735
1736<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00552">552</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1737
1738</div>
1739</div>
1740<a class="anchor" id="a47571eb3acae9a6aa330a03edcea7896"></a><!-- doxytag: member="irr::core::CMatrix4::operator=" ref="a47571eb3acae9a6aa330a03edcea7896" args="(const CMatrix4&lt; T &gt; &amp;other)" -->
1741<div class="memitem">
1742<div class="memproto">
1743<div class="memtemplate">
1744template&lt;class T &gt; </div>
1745 <table class="memname">
1746 <tr>
1747 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator= </td>
1748 <td>(</td>
1749 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1750 <td class="paramname"><em>other</em></td><td>)</td>
1751 <td><code> [inline]</code></td>
1752 </tr>
1753 </table>
1754</div>
1755<div class="memdoc">
1756
1757<p>Sets this matrix equal to the other matrix. </p>
1758
1759<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01443">1443</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1760
1761</div>
1762</div>
1763<a class="anchor" id="aa77c0ec30f4e42f7281392440898e9e3"></a><!-- doxytag: member="irr::core::CMatrix4::operator=" ref="aa77c0ec30f4e42f7281392440898e9e3" args="(const T &amp;scalar)" -->
1764<div class="memitem">
1765<div class="memproto">
1766<div class="memtemplate">
1767template&lt;class T &gt; </div>
1768 <table class="memname">
1769 <tr>
1770 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator= </td>
1771 <td>(</td>
1772 <td class="paramtype">const T &amp;&#160;</td>
1773 <td class="paramname"><em>scalar</em></td><td>)</td>
1774 <td><code> [inline]</code></td>
1775 </tr>
1776 </table>
1777</div>
1778<div class="memdoc">
1779
1780<p>Sets all elements of this matrix to the value. </p>
1781
1782<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01456">1456</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1783
1784</div>
1785</div>
1786<a class="anchor" id="a81029252a2a83ef4647f5d8a02cf62b5"></a><!-- doxytag: member="irr::core::CMatrix4::operator==" ref="a81029252a2a83ef4647f5d8a02cf62b5" args="(const CMatrix4&lt; T &gt; &amp;other) const " -->
1787<div class="memitem">
1788<div class="memproto">
1789<div class="memtemplate">
1790template&lt;class T &gt; </div>
1791 <table class="memname">
1792 <tr>
1793 <td class="memname">bool <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator== </td>
1794 <td>(</td>
1795 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
1796 <td class="paramname"><em>other</em></td><td>)</td>
1797 <td> const<code> [inline]</code></td>
1798 </tr>
1799 </table>
1800</div>
1801<div class="memdoc">
1802
1803<p>Returns true if other matrix is equal to this matrix. </p>
1804
1805<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01469">1469</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1806
1807</div>
1808</div>
1809<a class="anchor" id="aead4909f8bb2ab40875af175caf0085f"></a><!-- doxytag: member="irr::core::CMatrix4::operator[]" ref="aead4909f8bb2ab40875af175caf0085f" args="(u32 index)" -->
1810<div class="memitem">
1811<div class="memproto">
1812<div class="memtemplate">
1813template&lt;class T&gt; </div>
1814 <table class="memname">
1815 <tr>
1816 <td class="memname">T&amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator[] </td>
1817 <td>(</td>
1818 <td class="paramtype"><a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a>&#160;</td>
1819 <td class="paramname"><em>index</em></td><td>)</td>
1820 <td><code> [inline]</code></td>
1821 </tr>
1822 </table>
1823</div>
1824<div class="memdoc">
1825
1826<p>Simple operator for linearly accessing every element of the matrix. </p>
1827
1828<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00081">81</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1829
1830</div>
1831</div>
1832<a class="anchor" id="a1c7a81521e81280c31b8ae3397d1fffe"></a><!-- doxytag: member="irr::core::CMatrix4::operator[]" ref="a1c7a81521e81280c31b8ae3397d1fffe" args="(u32 index) const " -->
1833<div class="memitem">
1834<div class="memproto">
1835<div class="memtemplate">
1836template&lt;class T&gt; </div>
1837 <table class="memname">
1838 <tr>
1839 <td class="memname">const T&amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::operator[] </td>
1840 <td>(</td>
1841 <td class="paramtype"><a class="el" href="namespaceirr.html#a0416a53257075833e7002efd0a18e804">u32</a>&#160;</td>
1842 <td class="paramname"><em>index</em></td><td>)</td>
1843 <td> const<code> [inline]</code></td>
1844 </tr>
1845 </table>
1846</div>
1847<div class="memdoc">
1848
1849<p>Simple operator for linearly accessing every element of the matrix. </p>
1850
1851<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00090">90</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1852
1853</div>
1854</div>
1855<a class="anchor" id="a11a3ffa3eb0987030e7a8758dee8965a"></a><!-- doxytag: member="irr::core::CMatrix4::pointer" ref="a11a3ffa3eb0987030e7a8758dee8965a" args="() const " -->
1856<div class="memitem">
1857<div class="memproto">
1858<div class="memtemplate">
1859template&lt;class T&gt; </div>
1860 <table class="memname">
1861 <tr>
1862 <td class="memname">const T* <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::pointer </td>
1863 <td>(</td>
1864 <td class="paramname"></td><td>)</td>
1865 <td> const<code> [inline]</code></td>
1866 </tr>
1867 </table>
1868</div>
1869<div class="memdoc">
1870
1871<p>Returns pointer to internal array. </p>
1872
1873<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00099">99</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1874
1875</div>
1876</div>
1877<a class="anchor" id="a2d9b231425d1b8abddb9e1e997fbf2ea"></a><!-- doxytag: member="irr::core::CMatrix4::pointer" ref="a2d9b231425d1b8abddb9e1e997fbf2ea" args="()" -->
1878<div class="memitem">
1879<div class="memproto">
1880<div class="memtemplate">
1881template&lt;class T&gt; </div>
1882 <table class="memname">
1883 <tr>
1884 <td class="memname">T* <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::pointer </td>
1885 <td>(</td>
1886 <td class="paramname"></td><td>)</td>
1887 <td><code> [inline]</code></td>
1888 </tr>
1889 </table>
1890</div>
1891<div class="memdoc">
1892
1893<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00100">100</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1894
1895</div>
1896</div>
1897<a class="anchor" id="a8abcfbf972b19946c3022db380c6d153"></a><!-- doxytag: member="irr::core::CMatrix4::rotateVect" ref="a8abcfbf972b19946c3022db380c6d153" args="(vector3df &amp;vect) const " -->
1898<div class="memitem">
1899<div class="memproto">
1900<div class="memtemplate">
1901template&lt;class T &gt; </div>
1902 <table class="memname">
1903 <tr>
1904 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::rotateVect </td>
1905 <td>(</td>
1906 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
1907 <td class="paramname"><em>vect</em></td><td>)</td>
1908 <td> const<code> [inline]</code></td>
1909 </tr>
1910 </table>
1911</div>
1912<div class="memdoc">
1913
1914<p>Rotate a vector by the rotation part of this matrix. </p>
1915
1916<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01101">1101</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1917
1918<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1919
1920</div>
1921</div>
1922<a class="anchor" id="a592d57581118b651a24dc68b17b99ff6"></a><!-- doxytag: member="irr::core::CMatrix4::rotateVect" ref="a592d57581118b651a24dc68b17b99ff6" args="(core::vector3df &amp;out, const core::vector3df &amp;in) const " -->
1923<div class="memitem">
1924<div class="memproto">
1925<div class="memtemplate">
1926template&lt;class T &gt; </div>
1927 <table class="memname">
1928 <tr>
1929 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::rotateVect </td>
1930 <td>(</td>
1931 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
1932 <td class="paramname"><em>out</em>, </td>
1933 </tr>
1934 <tr>
1935 <td class="paramkey"></td>
1936 <td></td>
1937 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
1938 <td class="paramname"><em>in</em>&#160;</td>
1939 </tr>
1940 <tr>
1941 <td></td>
1942 <td>)</td>
1943 <td></td><td> const<code> [inline]</code></td>
1944 </tr>
1945 </table>
1946</div>
1947<div class="memdoc">
1948
1949<p>An alternate transform vector method, writing into a second vector. </p>
1950
1951<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01111">1111</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1952
1953<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1954
1955</div>
1956</div>
1957<a class="anchor" id="aa188488f489118e4daafd3b2ebab5119"></a><!-- doxytag: member="irr::core::CMatrix4::rotateVect" ref="aa188488f489118e4daafd3b2ebab5119" args="(T *out, const core::vector3df &amp;in) const " -->
1958<div class="memitem">
1959<div class="memproto">
1960<div class="memtemplate">
1961template&lt;class T &gt; </div>
1962 <table class="memname">
1963 <tr>
1964 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::rotateVect </td>
1965 <td>(</td>
1966 <td class="paramtype">T *&#160;</td>
1967 <td class="paramname"><em>out</em>, </td>
1968 </tr>
1969 <tr>
1970 <td class="paramkey"></td>
1971 <td></td>
1972 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
1973 <td class="paramname"><em>in</em>&#160;</td>
1974 </tr>
1975 <tr>
1976 <td></td>
1977 <td>)</td>
1978 <td></td><td> const<code> [inline]</code></td>
1979 </tr>
1980 </table>
1981</div>
1982<div class="memdoc">
1983
1984<p>An alternate transform vector method, writing into an array of 3 floats. </p>
1985
1986<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01120">1120</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
1987
1988<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
1989
1990</div>
1991</div>
1992<a class="anchor" id="a8503c58913ba9407ba00b173d8a3e25c"></a><!-- doxytag: member="irr::core::CMatrix4::setbyproduct" ref="a8503c58913ba9407ba00b173d8a3e25c" args="(const CMatrix4&lt; T &gt; &amp;other_a, const CMatrix4&lt; T &gt; &amp;other_b)" -->
1993<div class="memitem">
1994<div class="memproto">
1995<div class="memtemplate">
1996template&lt;class T &gt; </div>
1997 <table class="memname">
1998 <tr>
1999 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setbyproduct </td>
2000 <td>(</td>
2001 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
2002 <td class="paramname"><em>other_a</em>, </td>
2003 </tr>
2004 <tr>
2005 <td class="paramkey"></td>
2006 <td></td>
2007 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
2008 <td class="paramname"><em>other_b</em>&#160;</td>
2009 </tr>
2010 <tr>
2011 <td></td>
2012 <td>)</td>
2013 <td></td><td><code> [inline]</code></td>
2014 </tr>
2015 </table>
2016</div>
2017<div class="memdoc">
2018
2019<p>set this matrix to the product of two matrices </p>
2020<p>multiply by another matrix</p>
2021<p>Calculate b*a </p>
2022
2023<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00688">688</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2024
2025<p>References <a class="el" href="matrix4_8h_source.html#l01000">irr::core::CMatrix4&lt; T &gt;::isIdentity()</a>.</p>
2026
2027</div>
2028</div>
2029<a class="anchor" id="a526a2a11dcd8b18c9e77deb84094778d"></a><!-- doxytag: member="irr::core::CMatrix4::setbyproduct_nocheck" ref="a526a2a11dcd8b18c9e77deb84094778d" args="(const CMatrix4&lt; T &gt; &amp;other_a, const CMatrix4&lt; T &gt; &amp;other_b)" -->
2030<div class="memitem">
2031<div class="memproto">
2032<div class="memtemplate">
2033template&lt;class T &gt; </div>
2034 <table class="memname">
2035 <tr>
2036 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setbyproduct_nocheck </td>
2037 <td>(</td>
2038 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
2039 <td class="paramname"><em>other_a</em>, </td>
2040 </tr>
2041 <tr>
2042 <td class="paramkey"></td>
2043 <td></td>
2044 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp;&#160;</td>
2045 <td class="paramname"><em>other_b</em>&#160;</td>
2046 </tr>
2047 <tr>
2048 <td></td>
2049 <td>)</td>
2050 <td></td><td><code> [inline]</code></td>
2051 </tr>
2052 </table>
2053</div>
2054<div class="memdoc">
2055
2056<p>Set this matrix to the product of two matrices. </p>
2057<p>multiply by another matrix</p>
2058<p>Calculate b*a, no optimization used, use it if you know you never have a identity matrix </p>
2059
2060<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00653">653</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2061
2062</div>
2063</div>
2064<a class="anchor" id="a87f7195337a2bf7a49978c2ec1100c0a"></a><!-- doxytag: member="irr::core::CMatrix4::setDefinitelyIdentityMatrix" ref="a87f7195337a2bf7a49978c2ec1100c0a" args="(bool isDefinitelyIdentityMatrix)" -->
2065<div class="memitem">
2066<div class="memproto">
2067<div class="memtemplate">
2068template&lt;class T &gt; </div>
2069 <table class="memname">
2070 <tr>
2071 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setDefinitelyIdentityMatrix </td>
2072 <td>(</td>
2073 <td class="paramtype">bool&#160;</td>
2074 <td class="paramname"><em>isDefinitelyIdentityMatrix</em></td><td>)</td>
2075 <td><code> [inline]</code></td>
2076 </tr>
2077 </table>
2078</div>
2079<div class="memdoc">
2080
2081<p>Sets if the matrix is definitely identity matrix. </p>
2082
2083<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02188">2188</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2084
2085<p>Referenced by <a class="el" href="quaternion_8h_source.html#l00349">irr::core::quaternion::getMatrix()</a>, and <a class="el" href="quaternion_8h_source.html#l00411">irr::core::quaternion::getMatrix_transposed()</a>.</p>
2086
2087</div>
2088</div>
2089<a class="anchor" id="afd84b9c93b4c8e9dc2abefa4a28057f9"></a><!-- doxytag: member="irr::core::CMatrix4::setInverseRotationDegrees" ref="afd84b9c93b4c8e9dc2abefa4a28057f9" args="(const vector3d&lt; T &gt; &amp;rotation)" -->
2090<div class="memitem">
2091<div class="memproto">
2092<div class="memtemplate">
2093template&lt;class T &gt; </div>
2094 <table class="memname">
2095 <tr>
2096 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setInverseRotationDegrees </td>
2097 <td>(</td>
2098 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2099 <td class="paramname"><em>rotation</em></td><td>)</td>
2100 <td><code> [inline]</code></td>
2101 </tr>
2102 </table>
2103</div>
2104<div class="memdoc">
2105
2106<p>Make an inverted rotation matrix from Euler angles. </p>
2107<p>The 4th row and column are unmodified. </p>
2108
2109<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00819">819</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2110
2111<p>References <a class="el" href="irr_math_8h_source.html#l00074">irr::core::DEGTORAD</a>.</p>
2112
2113</div>
2114</div>
2115<a class="anchor" id="a1a15d7b55769678512144f0fb7e15a92"></a><!-- doxytag: member="irr::core::CMatrix4::setInverseRotationRadians" ref="a1a15d7b55769678512144f0fb7e15a92" args="(const vector3d&lt; T &gt; &amp;rotation)" -->
2116<div class="memitem">
2117<div class="memproto">
2118<div class="memtemplate">
2119template&lt;class T &gt; </div>
2120 <table class="memname">
2121 <tr>
2122 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setInverseRotationRadians </td>
2123 <td>(</td>
2124 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2125 <td class="paramname"><em>rotation</em></td><td>)</td>
2126 <td><code> [inline]</code></td>
2127 </tr>
2128 </table>
2129</div>
2130<div class="memdoc">
2131
2132<p>Make an inverted rotation matrix from Euler angles. </p>
2133<p>Sets matrix to rotation matrix of inverse angles given as parameters.</p>
2134<p>The 4th row and column are unmodified. </p>
2135
2136<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00917">917</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2137
2138<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2139
2140</div>
2141</div>
2142<a class="anchor" id="a258e103fcb6ce1564978624280ecb7fe"></a><!-- doxytag: member="irr::core::CMatrix4::setInverseTranslation" ref="a258e103fcb6ce1564978624280ecb7fe" args="(const vector3d&lt; T &gt; &amp;translation)" -->
2143<div class="memitem">
2144<div class="memproto">
2145<div class="memtemplate">
2146template&lt;class T &gt; </div>
2147 <table class="memname">
2148 <tr>
2149 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setInverseTranslation </td>
2150 <td>(</td>
2151 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2152 <td class="paramname"><em>translation</em></td><td>)</td>
2153 <td><code> [inline]</code></td>
2154 </tr>
2155 </table>
2156</div>
2157<div class="memdoc">
2158
2159<p>Set the inverse translation of the current matrix. Will erase any previous values. </p>
2160
2161<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00763">763</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2162
2163<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2164
2165</div>
2166</div>
2167<a class="anchor" id="ae59fb2248865eba3026d13b9756ba1e1"></a><!-- doxytag: member="irr::core::CMatrix4::setM" ref="ae59fb2248865eba3026d13b9756ba1e1" args="(const T *data)" -->
2168<div class="memitem">
2169<div class="memproto">
2170<div class="memtemplate">
2171template&lt;class T &gt; </div>
2172 <table class="memname">
2173 <tr>
2174 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setM </td>
2175 <td>(</td>
2176 <td class="paramtype">const T *&#160;</td>
2177 <td class="paramname"><em>data</em></td><td>)</td>
2178 <td><code> [inline]</code></td>
2179 </tr>
2180 </table>
2181</div>
2182<div class="memdoc">
2183
2184<p>Sets all matrix data members at once. </p>
2185
2186<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02175">2175</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2187
2188</div>
2189</div>
2190<a class="anchor" id="a2fad61540e78fc7dafe7f6270b0558ac"></a><!-- doxytag: member="irr::core::CMatrix4::setRotationAxisRadians" ref="a2fad61540e78fc7dafe7f6270b0558ac" args="(const T &amp;angle, const vector3d&lt; T &gt; &amp;axis)" -->
2191<div class="memitem">
2192<div class="memproto">
2193<div class="memtemplate">
2194template&lt;class T &gt; </div>
2195 <table class="memname">
2196 <tr>
2197 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setRotationAxisRadians </td>
2198 <td>(</td>
2199 <td class="paramtype">const T &amp;&#160;</td>
2200 <td class="paramname"><em>angle</em>, </td>
2201 </tr>
2202 <tr>
2203 <td class="paramkey"></td>
2204 <td></td>
2205 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2206 <td class="paramname"><em>axis</em>&#160;</td>
2207 </tr>
2208 <tr>
2209 <td></td>
2210 <td>)</td>
2211 <td></td><td><code> [inline]</code></td>
2212 </tr>
2213 </table>
2214</div>
2215<div class="memdoc">
2216
2217<p>Make a rotation matrix from angle and axis, assuming left handed rotation. </p>
2218<p>Sets matrix to rotation matrix defined by axis and angle, assuming LH rotation.</p>
2219<p>The 4th row and column are unmodified. </p>
2220
2221<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00948">948</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2222
2223<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2224
2225</div>
2226</div>
2227<a class="anchor" id="a8117628146ce654b3b292af7c49e25e2"></a><!-- doxytag: member="irr::core::CMatrix4::setRotationCenter" ref="a8117628146ce654b3b292af7c49e25e2" args="(const core::vector3df &amp;center, const core::vector3df &amp;translate)" -->
2228<div class="memitem">
2229<div class="memproto">
2230<div class="memtemplate">
2231template&lt;class T &gt; </div>
2232 <table class="memname">
2233 <tr>
2234 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setRotationCenter </td>
2235 <td>(</td>
2236 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
2237 <td class="paramname"><em>center</em>, </td>
2238 </tr>
2239 <tr>
2240 <td class="paramkey"></td>
2241 <td></td>
2242 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
2243 <td class="paramname"><em>translate</em>&#160;</td>
2244 </tr>
2245 <tr>
2246 <td></td>
2247 <td>)</td>
2248 <td></td><td><code> [inline]</code></td>
2249 </tr>
2250 </table>
2251</div>
2252<div class="memdoc">
2253
2254<p>Builds a combined matrix which translates to a center before rotation and translates from origin afterwards. </p>
2255<p>Builds a combined matrix which translate to a center before rotation and translate afterwards.</p>
2256<dl><dt><b>Parameters:</b></dt><dd>
2257 <table class="params">
2258 <tr><td class="paramname">center</td><td>Position to rotate around </td></tr>
2259 <tr><td class="paramname">translate</td><td>Translation applied after the rotation </td></tr>
2260 </table>
2261 </dd>
2262</dl>
2263
2264<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02041">2041</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2265
2266<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2267
2268<p>Referenced by <a class="el" href="quaternion_8h_source.html#l00388">irr::core::quaternion::getMatrixCenter()</a>.</p>
2269
2270</div>
2271</div>
2272<a class="anchor" id="a8ee5ef8619d4b0f56d72ac84495ed644"></a><!-- doxytag: member="irr::core::CMatrix4::setRotationDegrees" ref="a8ee5ef8619d4b0f56d72ac84495ed644" args="(const vector3d&lt; T &gt; &amp;rotation)" -->
2273<div class="memitem">
2274<div class="memproto">
2275<div class="memtemplate">
2276template&lt;class T &gt; </div>
2277 <table class="memname">
2278 <tr>
2279 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setRotationDegrees </td>
2280 <td>(</td>
2281 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2282 <td class="paramname"><em>rotation</em></td><td>)</td>
2283 <td><code> [inline]</code></td>
2284 </tr>
2285 </table>
2286</div>
2287<div class="memdoc">
2288
2289<p>Make a rotation matrix from Euler angles. The 4th row and column are unmodified. </p>
2290
2291<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00813">813</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2292
2293<p>References <a class="el" href="irr_math_8h_source.html#l00074">irr::core::DEGTORAD</a>.</p>
2294
2295<p>Referenced by <a class="el" href="_i_scene_node_8h_source.html#l00204">irr::scene::ISceneNode::getRelativeTransformation()</a>.</p>
2296
2297</div>
2298</div>
2299<a class="anchor" id="a05aac7bd2e7651369fc813a51258afbe"></a><!-- doxytag: member="irr::core::CMatrix4::setRotationRadians" ref="a05aac7bd2e7651369fc813a51258afbe" args="(const vector3d&lt; T &gt; &amp;rotation)" -->
2300<div class="memitem">
2301<div class="memproto">
2302<div class="memtemplate">
2303template&lt;class T &gt; </div>
2304 <table class="memname">
2305 <tr>
2306 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setRotationRadians </td>
2307 <td>(</td>
2308 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2309 <td class="paramname"><em>rotation</em></td><td>)</td>
2310 <td><code> [inline]</code></td>
2311 </tr>
2312 </table>
2313</div>
2314<div class="memdoc">
2315
2316<p>Make a rotation matrix from Euler angles. The 4th row and column are unmodified. </p>
2317
2318<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00825">825</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2319
2320<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2321
2322</div>
2323</div>
2324<a class="anchor" id="a47117d44419af87e70084c01ab852049"></a><!-- doxytag: member="irr::core::CMatrix4::setScale" ref="a47117d44419af87e70084c01ab852049" args="(const vector3d&lt; T &gt; &amp;scale)" -->
2325<div class="memitem">
2326<div class="memproto">
2327<div class="memtemplate">
2328template&lt;class T &gt; </div>
2329 <table class="memname">
2330 <tr>
2331 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setScale </td>
2332 <td>(</td>
2333 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2334 <td class="paramname"><em>scale</em></td><td>)</td>
2335 <td><code> [inline]</code></td>
2336 </tr>
2337 </table>
2338</div>
2339<div class="memdoc">
2340
2341<p>Set Scale. </p>
2342
2343<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00775">775</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2344
2345<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2346
2347<p>Referenced by <a class="el" href="_i_scene_node_8h_source.html#l00204">irr::scene::ISceneNode::getRelativeTransformation()</a>.</p>
2348
2349</div>
2350</div>
2351<a class="anchor" id="a18af980e2bc3575f60576b6d4b4cc0f3"></a><!-- doxytag: member="irr::core::CMatrix4::setScale" ref="a18af980e2bc3575f60576b6d4b4cc0f3" args="(const T scale)" -->
2352<div class="memitem">
2353<div class="memproto">
2354<div class="memtemplate">
2355template&lt;class T&gt; </div>
2356 <table class="memname">
2357 <tr>
2358 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt;T&gt;&amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setScale </td>
2359 <td>(</td>
2360 <td class="paramtype">const T&#160;</td>
2361 <td class="paramname"><em>scale</em></td><td>)</td>
2362 <td><code> [inline]</code></td>
2363 </tr>
2364 </table>
2365</div>
2366<div class="memdoc">
2367
2368<p>Set Scale. </p>
2369
2370<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00196">196</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2371
2372<p>References <a class="el" href="matrix4_8h_source.html#l00196">irr::core::CMatrix4&lt; T &gt;::setScale()</a>.</p>
2373
2374<p>Referenced by <a class="el" href="matrix4_8h_source.html#l00196">irr::core::CMatrix4&lt; T &gt;::setScale()</a>.</p>
2375
2376</div>
2377</div>
2378<a class="anchor" id="a445a7653292ae4ffb0baa50032a8674e"></a><!-- doxytag: member="irr::core::CMatrix4::setTextureRotationCenter" ref="a445a7653292ae4ffb0baa50032a8674e" args="(f32 radAngle)" -->
2379<div class="memitem">
2380<div class="memproto">
2381<div class="memtemplate">
2382template&lt;class T &gt; </div>
2383 <table class="memname">
2384 <tr>
2385 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTextureRotationCenter </td>
2386 <td>(</td>
2387 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2388 <td class="paramname"><em>radAngle</em></td><td>)</td>
2389 <td><code> [inline]</code></td>
2390 </tr>
2391 </table>
2392</div>
2393<div class="memdoc">
2394
2395<p>Set texture transformation rotation. </p>
2396<p>Rotate about z axis, recenter at (0.5,0.5). Doesn't clear other elements than those affected </p>
2397<dl><dt><b>Parameters:</b></dt><dd>
2398 <table class="params">
2399 <tr><td class="paramname">radAngle</td><td>Angle in radians </td></tr>
2400 </table>
2401 </dd>
2402</dl>
2403<dl class="return"><dt><b>Returns:</b></dt><dd>Altered matrix </dd></dl>
2404
2405<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02101">2101</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2406
2407</div>
2408</div>
2409<a class="anchor" id="aed32a7a8da9c4cee5babe8f6b4aa7dd4"></a><!-- doxytag: member="irr::core::CMatrix4::setTextureScale" ref="aed32a7a8da9c4cee5babe8f6b4aa7dd4" args="(f32 sx, f32 sy)" -->
2410<div class="memitem">
2411<div class="memproto">
2412<div class="memtemplate">
2413template&lt;class T &gt; </div>
2414 <table class="memname">
2415 <tr>
2416 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTextureScale </td>
2417 <td>(</td>
2418 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2419 <td class="paramname"><em>sx</em>, </td>
2420 </tr>
2421 <tr>
2422 <td class="paramkey"></td>
2423 <td></td>
2424 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2425 <td class="paramname"><em>sy</em>&#160;</td>
2426 </tr>
2427 <tr>
2428 <td></td>
2429 <td>)</td>
2430 <td></td><td><code> [inline]</code></td>
2431 </tr>
2432 </table>
2433</div>
2434<div class="memdoc">
2435
2436<p>Set texture transformation scale. </p>
2437<p>Doesn't clear other elements than those affected. </p>
2438<dl><dt><b>Parameters:</b></dt><dd>
2439 <table class="params">
2440 <tr><td class="paramname">sx</td><td>Scale factor on x axis </td></tr>
2441 <tr><td class="paramname">sy</td><td>Scale factor on y axis </td></tr>
2442 </table>
2443 </dd>
2444</dl>
2445<dl class="return"><dt><b>Returns:</b></dt><dd>Altered matrix. </dd></dl>
2446
2447<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02147">2147</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2448
2449</div>
2450</div>
2451<a class="anchor" id="adbd668867d117dc9331e68abef0af221"></a><!-- doxytag: member="irr::core::CMatrix4::setTextureScaleCenter" ref="adbd668867d117dc9331e68abef0af221" args="(f32 sx, f32 sy)" -->
2452<div class="memitem">
2453<div class="memproto">
2454<div class="memtemplate">
2455template&lt;class T &gt; </div>
2456 <table class="memname">
2457 <tr>
2458 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTextureScaleCenter </td>
2459 <td>(</td>
2460 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2461 <td class="paramname"><em>sx</em>, </td>
2462 </tr>
2463 <tr>
2464 <td class="paramkey"></td>
2465 <td></td>
2466 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2467 <td class="paramname"><em>sy</em>&#160;</td>
2468 </tr>
2469 <tr>
2470 <td></td>
2471 <td>)</td>
2472 <td></td><td><code> [inline]</code></td>
2473 </tr>
2474 </table>
2475</div>
2476<div class="memdoc">
2477
2478<p>Set texture transformation scale, and recenter at (0.5,0.5) </p>
2479<p>Doesn't clear other elements than those affected. </p>
2480<dl><dt><b>Parameters:</b></dt><dd>
2481 <table class="params">
2482 <tr><td class="paramname">sx</td><td>Scale factor on x axis </td></tr>
2483 <tr><td class="paramname">sy</td><td>Scale factor on y axis </td></tr>
2484 </table>
2485 </dd>
2486</dl>
2487<dl class="return"><dt><b>Returns:</b></dt><dd>Altered matrix. </dd></dl>
2488
2489<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02159">2159</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2490
2491</div>
2492</div>
2493<a class="anchor" id="a2bab9633697a892f08d89c7aeee6daf6"></a><!-- doxytag: member="irr::core::CMatrix4::setTextureTranslate" ref="a2bab9633697a892f08d89c7aeee6daf6" args="(f32 x, f32 y)" -->
2494<div class="memitem">
2495<div class="memproto">
2496<div class="memtemplate">
2497template&lt;class T &gt; </div>
2498 <table class="memname">
2499 <tr>
2500 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTextureTranslate </td>
2501 <td>(</td>
2502 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2503 <td class="paramname"><em>x</em>, </td>
2504 </tr>
2505 <tr>
2506 <td class="paramkey"></td>
2507 <td></td>
2508 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2509 <td class="paramname"><em>y</em>&#160;</td>
2510 </tr>
2511 <tr>
2512 <td></td>
2513 <td>)</td>
2514 <td></td><td><code> [inline]</code></td>
2515 </tr>
2516 </table>
2517</div>
2518<div class="memdoc">
2519
2520<p>Set texture transformation translation. </p>
2521<p>Doesn't clear other elements than those affected. </p>
2522<dl><dt><b>Parameters:</b></dt><dd>
2523 <table class="params">
2524 <tr><td class="paramname">x</td><td>Offset on x axis </td></tr>
2525 <tr><td class="paramname">y</td><td>Offset on y axis </td></tr>
2526 </table>
2527 </dd>
2528</dl>
2529<dl class="return"><dt><b>Returns:</b></dt><dd>Altered matrix </dd></dl>
2530
2531<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02122">2122</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2532
2533</div>
2534</div>
2535<a class="anchor" id="a7d999210cc7427e9d744271e50d26c3c"></a><!-- doxytag: member="irr::core::CMatrix4::setTextureTranslateTransposed" ref="a7d999210cc7427e9d744271e50d26c3c" args="(f32 x, f32 y)" -->
2536<div class="memitem">
2537<div class="memproto">
2538<div class="memtemplate">
2539template&lt;class T &gt; </div>
2540 <table class="memname">
2541 <tr>
2542 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTextureTranslateTransposed </td>
2543 <td>(</td>
2544 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2545 <td class="paramname"><em>x</em>, </td>
2546 </tr>
2547 <tr>
2548 <td class="paramkey"></td>
2549 <td></td>
2550 <td class="paramtype"><a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a>&#160;</td>
2551 <td class="paramname"><em>y</em>&#160;</td>
2552 </tr>
2553 <tr>
2554 <td></td>
2555 <td>)</td>
2556 <td></td><td><code> [inline]</code></td>
2557 </tr>
2558 </table>
2559</div>
2560<div class="memdoc">
2561
2562<p>Set texture transformation translation, using a transposed representation. </p>
2563<p>Doesn't clear other elements than those affected. </p>
2564<dl><dt><b>Parameters:</b></dt><dd>
2565 <table class="params">
2566 <tr><td class="paramname">x</td><td>Offset on x axis </td></tr>
2567 <tr><td class="paramname">y</td><td>Offset on y axis </td></tr>
2568 </table>
2569 </dd>
2570</dl>
2571<dl class="return"><dt><b>Returns:</b></dt><dd>Altered matrix </dd></dl>
2572
2573<p>Definition at line <a class="el" href="matrix4_8h_source.html#l02135">2135</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2574
2575</div>
2576</div>
2577<a class="anchor" id="ac04a3b341cbfbb7986be682691655622"></a><!-- doxytag: member="irr::core::CMatrix4::setTranslation" ref="ac04a3b341cbfbb7986be682691655622" args="(const vector3d&lt; T &gt; &amp;translation)" -->
2578<div class="memitem">
2579<div class="memproto">
2580<div class="memtemplate">
2581template&lt;class T &gt; </div>
2582 <table class="memname">
2583 <tr>
2584 <td class="memname"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a>&lt; T &gt; &amp; <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::setTranslation </td>
2585 <td>(</td>
2586 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1vector3d.html">vector3d</a>&lt; T &gt; &amp;&#160;</td>
2587 <td class="paramname"><em>translation</em></td><td>)</td>
2588 <td><code> [inline]</code></td>
2589 </tr>
2590 </table>
2591</div>
2592<div class="memdoc">
2593
2594<p>Set the translation of the current matrix. Will erase any previous values. </p>
2595
2596<p>Definition at line <a class="el" href="matrix4_8h_source.html#l00751">751</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2597
2598<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2599
2600<p>Referenced by <a class="el" href="_i_scene_node_8h_source.html#l00204">irr::scene::ISceneNode::getRelativeTransformation()</a>.</p>
2601
2602</div>
2603</div>
2604<a class="anchor" id="ac12468d698fbf6cd545e8b3fbf2a0042"></a><!-- doxytag: member="irr::core::CMatrix4::transformBox" ref="ac12468d698fbf6cd545e8b3fbf2a0042" args="(core::aabbox3d&lt; f32 &gt; &amp;box) const " -->
2605<div class="memitem">
2606<div class="memproto">
2607<div class="memtemplate">
2608template&lt;class T &gt; </div>
2609 <table class="memname">
2610 <tr>
2611 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformBox </td>
2612 <td>(</td>
2613 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;&#160;</td>
2614 <td class="paramname"><em>box</em></td><td>)</td>
2615 <td> const<code> [inline]</code></td>
2616 </tr>
2617 </table>
2618</div>
2619<div class="memdoc">
2620
2621<p>Transforms a axis aligned bounding box. </p>
2622<p>The result box of this operation may not be accurate at all. For correct results, use <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#a87451aea9c07b71d1a8b6091b8cefa63" title="Transforms a axis aligned bounding box.">transformBoxEx()</a> </p>
2623
2624<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01203">1203</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2625
2626<p>References <a class="el" href="aabbox3d_8h_source.html#l00320">irr::core::aabbox3d&lt; T &gt;::MaxEdge</a>, <a class="el" href="aabbox3d_8h_source.html#l00317">irr::core::aabbox3d&lt; T &gt;::MinEdge</a>, and <a class="el" href="aabbox3d_8h_source.html#l00172">irr::core::aabbox3d&lt; T &gt;::repair()</a>.</p>
2627
2628</div>
2629</div>
2630<a class="anchor" id="a87451aea9c07b71d1a8b6091b8cefa63"></a><!-- doxytag: member="irr::core::CMatrix4::transformBoxEx" ref="a87451aea9c07b71d1a8b6091b8cefa63" args="(core::aabbox3d&lt; f32 &gt; &amp;box) const " -->
2631<div class="memitem">
2632<div class="memproto">
2633<div class="memtemplate">
2634template&lt;class T &gt; </div>
2635 <table class="memname">
2636 <tr>
2637 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformBoxEx </td>
2638 <td>(</td>
2639 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1aabbox3d.html">core::aabbox3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;&#160;</td>
2640 <td class="paramname"><em>box</em></td><td>)</td>
2641 <td> const<code> [inline]</code></td>
2642 </tr>
2643 </table>
2644</div>
2645<div class="memdoc">
2646
2647<p>Transforms a axis aligned bounding box. </p>
2648<p>Transforms a axis aligned bounding box more accurately than <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac12468d698fbf6cd545e8b3fbf2a0042" title="Transforms a axis aligned bounding box.">transformBox()</a></p>
2649<p>The result box of this operation should by accurate, but this operation is slower than <a class="el" href="classirr_1_1core_1_1_c_matrix4.html#ac12468d698fbf6cd545e8b3fbf2a0042" title="Transforms a axis aligned bounding box.">transformBox()</a>. </p>
2650
2651<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01217">1217</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2652
2653<p>References <a class="el" href="aabbox3d_8h_source.html#l00320">irr::core::aabbox3d&lt; T &gt;::MaxEdge</a>, <a class="el" href="aabbox3d_8h_source.html#l00317">irr::core::aabbox3d&lt; T &gt;::MinEdge</a>, <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2654
2655<p>Referenced by <a class="el" href="_i_scene_node_8h_source.html#l00178">irr::scene::ISceneNode::getTransformedBoundingBox()</a>.</p>
2656
2657</div>
2658</div>
2659<a class="anchor" id="ac4f0d4156d573d8b73eb51dce76e094e"></a><!-- doxytag: member="irr::core::CMatrix4::transformPlane" ref="ac4f0d4156d573d8b73eb51dce76e094e" args="(core::plane3d&lt; f32 &gt; &amp;plane) const " -->
2660<div class="memitem">
2661<div class="memproto">
2662<div class="memtemplate">
2663template&lt;class T &gt; </div>
2664 <table class="memname">
2665 <tr>
2666 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformPlane </td>
2667 <td>(</td>
2668 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;&#160;</td>
2669 <td class="paramname"><em>plane</em></td><td>)</td>
2670 <td> const<code> [inline]</code></td>
2671 </tr>
2672 </table>
2673</div>
2674<div class="memdoc">
2675
2676<p>Transforms a plane by this matrix. </p>
2677
2678<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01179">1179</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2679
2680<p>References <a class="el" href="plane3d_8h_source.html#l00155">irr::core::plane3d&lt; T &gt;::getMemberPoint()</a>, <a class="el" href="plane3d_8h_source.html#l00228">irr::core::plane3d&lt; T &gt;::Normal</a>, and <a class="el" href="plane3d_8h_source.html#l00058">irr::core::plane3d&lt; T &gt;::setPlane()</a>.</p>
2681
2682<p>Referenced by <a class="el" href="_s_view_frustum_8h_source.html#l00148">irr::scene::SViewFrustum::transform()</a>.</p>
2683
2684</div>
2685</div>
2686<a class="anchor" id="a949042276c2025189cc568c8080d7579"></a><!-- doxytag: member="irr::core::CMatrix4::transformPlane" ref="a949042276c2025189cc568c8080d7579" args="(const core::plane3d&lt; f32 &gt; &amp;in, core::plane3d&lt; f32 &gt; &amp;out) const " -->
2687<div class="memitem">
2688<div class="memproto">
2689<div class="memtemplate">
2690template&lt;class T &gt; </div>
2691 <table class="memname">
2692 <tr>
2693 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformPlane </td>
2694 <td>(</td>
2695 <td class="paramtype">const <a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;&#160;</td>
2696 <td class="paramname"><em>in</em>, </td>
2697 </tr>
2698 <tr>
2699 <td class="paramkey"></td>
2700 <td></td>
2701 <td class="paramtype"><a class="el" href="classirr_1_1core_1_1plane3d.html">core::plane3d</a>&lt; <a class="el" href="namespaceirr.html#a0277be98d67dc26ff93b1a6a1d086b07">f32</a> &gt; &amp;&#160;</td>
2702 <td class="paramname"><em>out</em>&#160;</td>
2703 </tr>
2704 <tr>
2705 <td></td>
2706 <td>)</td>
2707 <td></td><td> const<code> [inline]</code></td>
2708 </tr>
2709 </table>
2710</div>
2711<div class="memdoc">
2712
2713<p>Transforms a plane by this matrix. </p>
2714
2715<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01195">1195</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2716
2717</div>
2718</div>
2719<a class="anchor" id="a82b910d8a4116a7455167dfa62fc4d72"></a><!-- doxytag: member="irr::core::CMatrix4::transformVec3" ref="a82b910d8a4116a7455167dfa62fc4d72" args="(T *out, const T *in) const " -->
2720<div class="memitem">
2721<div class="memproto">
2722<div class="memtemplate">
2723template&lt;class T &gt; </div>
2724 <table class="memname">
2725 <tr>
2726 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformVec3 </td>
2727 <td>(</td>
2728 <td class="paramtype">T *&#160;</td>
2729 <td class="paramname"><em>out</em>, </td>
2730 </tr>
2731 <tr>
2732 <td class="paramkey"></td>
2733 <td></td>
2734 <td class="paramtype">const T *&#160;</td>
2735 <td class="paramname"><em>in</em>&#160;</td>
2736 </tr>
2737 <tr>
2738 <td></td>
2739 <td>)</td>
2740 <td></td><td> const<code> [inline]</code></td>
2741 </tr>
2742 </table>
2743</div>
2744<div class="memdoc">
2745
2746<p>An alternate transform vector method, reading from and writing to an array of 3 floats. </p>
2747
2748<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01169">1169</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2749
2750</div>
2751</div>
2752<a class="anchor" id="aa6bb8b39114749d70e51bd1b90bce0a1"></a><!-- doxytag: member="irr::core::CMatrix4::transformVect" ref="aa6bb8b39114749d70e51bd1b90bce0a1" args="(vector3df &amp;vect) const " -->
2753<div class="memitem">
2754<div class="memproto">
2755<div class="memtemplate">
2756template&lt;class T &gt; </div>
2757 <table class="memname">
2758 <tr>
2759 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformVect </td>
2760 <td>(</td>
2761 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
2762 <td class="paramname"><em>vect</em></td><td>)</td>
2763 <td> const<code> [inline]</code></td>
2764 </tr>
2765 </table>
2766</div>
2767<div class="memdoc">
2768
2769<p>Transforms the vector by this matrix. </p>
2770
2771<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01137">1137</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2772
2773<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2774
2775<p>Referenced by <a class="el" href="_s_vertex_manipulator_8h_source.html#l00257">irr::scene::SVertexPositionTransformManipulator::operator()()</a>, and <a class="el" href="_s_view_frustum_8h_source.html#l00148">irr::scene::SViewFrustum::transform()</a>.</p>
2776
2777</div>
2778</div>
2779<a class="anchor" id="a7f630ed6811ab36921c2fe6f63f7f426"></a><!-- doxytag: member="irr::core::CMatrix4::transformVect" ref="a7f630ed6811ab36921c2fe6f63f7f426" args="(vector3df &amp;out, const vector3df &amp;in) const " -->
2780<div class="memitem">
2781<div class="memproto">
2782<div class="memtemplate">
2783template&lt;class T &gt; </div>
2784 <table class="memname">
2785 <tr>
2786 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformVect </td>
2787 <td>(</td>
2788 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
2789 <td class="paramname"><em>out</em>, </td>
2790 </tr>
2791 <tr>
2792 <td class="paramkey"></td>
2793 <td></td>
2794 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
2795 <td class="paramname"><em>in</em>&#160;</td>
2796 </tr>
2797 <tr>
2798 <td></td>
2799 <td>)</td>
2800 <td></td><td> const<code> [inline]</code></td>
2801 </tr>
2802 </table>
2803</div>
2804<div class="memdoc">
2805
2806<p>Transforms input vector by this matrix and stores result in output vector. </p>
2807
2808<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01151">1151</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2809
2810<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2811
2812</div>
2813</div>
2814<a class="anchor" id="aad3d6e0c59e2d5709a534abc2b86dbd3"></a><!-- doxytag: member="irr::core::CMatrix4::transformVect" ref="aad3d6e0c59e2d5709a534abc2b86dbd3" args="(T *out, const core::vector3df &amp;in) const " -->
2815<div class="memitem">
2816<div class="memproto">
2817<div class="memtemplate">
2818template&lt;class T &gt; </div>
2819 <table class="memname">
2820 <tr>
2821 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::transformVect </td>
2822 <td>(</td>
2823 <td class="paramtype">T *&#160;</td>
2824 <td class="paramname"><em>out</em>, </td>
2825 </tr>
2826 <tr>
2827 <td class="paramkey"></td>
2828 <td></td>
2829 <td class="paramtype">const <a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">core::vector3df</a> &amp;&#160;</td>
2830 <td class="paramname"><em>in</em>&#160;</td>
2831 </tr>
2832 <tr>
2833 <td></td>
2834 <td>)</td>
2835 <td></td><td> const<code> [inline]</code></td>
2836 </tr>
2837 </table>
2838</div>
2839<div class="memdoc">
2840
2841<p>An alternate transform vector method, writing into an array of 4 floats. </p>
2842
2843<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01160">1160</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2844
2845<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2846
2847</div>
2848</div>
2849<a class="anchor" id="a587cb77fd7de7a13771c96a90c4f3de0"></a><!-- doxytag: member="irr::core::CMatrix4::translateVect" ref="a587cb77fd7de7a13771c96a90c4f3de0" args="(vector3df &amp;vect) const " -->
2850<div class="memitem">
2851<div class="memproto">
2852<div class="memtemplate">
2853template&lt;class T &gt; </div>
2854 <table class="memname">
2855 <tr>
2856 <td class="memname">void <a class="el" href="classirr_1_1core_1_1_c_matrix4.html">irr::core::CMatrix4</a>&lt; T &gt;::translateVect </td>
2857 <td>(</td>
2858 <td class="paramtype"><a class="el" href="namespaceirr_1_1core.html#a06f169d08b5c429f5575acb7edbad811">vector3df</a> &amp;&#160;</td>
2859 <td class="paramname"><em>vect</em></td><td>)</td>
2860 <td> const<code> [inline]</code></td>
2861 </tr>
2862 </table>
2863</div>
2864<div class="memdoc">
2865
2866<p>Translate a vector by the translation part of this matrix. </p>
2867
2868<p>Definition at line <a class="el" href="matrix4_8h_source.html#l01298">1298</a> of file <a class="el" href="matrix4_8h_source.html">matrix4.h</a>.</p>
2869
2870<p>References <a class="el" href="vector3d_8h_source.html#l00408">irr::core::vector3d&lt; T &gt;::X</a>, <a class="el" href="vector3d_8h_source.html#l00411">irr::core::vector3d&lt; T &gt;::Y</a>, and <a class="el" href="vector3d_8h_source.html#l00414">irr::core::vector3d&lt; T &gt;::Z</a>.</p>
2871
2872</div>
2873</div>
2874<hr/>The documentation for this class was generated from the following file:<ul>
2875<li><a class="el" href="matrix4_8h_source.html">matrix4.h</a></li>
2876</ul>
2877</div>
2878</div>
2879 <div id="nav-path" class="navpath">
2880 <ul>
2881 <li class="navelem"><a class="el" href="namespaceirr.html">irr</a> </li>
2882 <li class="navelem"><a class="el" href="namespaceirr_1_1core.html">core</a> </li>
2883 <li class="navelem"><a class="el" href="classirr_1_1core_1_1_c_matrix4.html">CMatrix4</a> </li>
2884<!-- window showing the filter options -->
2885<div id="MSearchSelectWindow"
2886 onmouseover="return searchBox.OnSearchSelectShow()"
2887 onmouseout="return searchBox.OnSearchSelectHide()"
2888 onkeydown="return searchBox.OnSearchSelectKey(event)">
2889<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&#160;</span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark">&#160;</span>Defines</a></div>
2890
2891<!-- iframe showing the search results (closed by default) -->
2892<div id="MSearchResultsWindow">
2893<iframe src="javascript:void(0)" frameborder="0"
2894 name="MSearchResults" id="MSearchResults">
2895</iframe>
2896</div>
2897
2898
2899 <li class="footer">
2900<a href="http://irrlicht.sourceforge.net" target="_blank">Irrlicht
2901Engine</a> Documentation &copy; 2003-2012 by Nikolaus Gebhardt. Generated on Sun Nov 17 2013 20:18:43 for Irrlicht 3D Engine by
2902<a href="http://www.doxygen.org/index.html" target="_blank">Doxygen</a> 1.7.5.1 </li>
2903 </ul>
2904 </div>
2905
2906
2907</body>
2908</html>