/doc/html/_matrix4_8h_source.html
HTML | 1458 lines | 1437 code | 18 blank | 3 comment | 0 complexity | acd174eb77cb067abbb18f72267ed5ac MD5 | raw file
Possible License(s): BSD-3-Clause
Large files files are truncated, but you can click here to view the full file
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
- <title>Britefury Math Library: src/Math/Matrix4.h Source File</title>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- <link href="search/search.css" rel="stylesheet" type="text/css"/>
- <script type="text/javascript" src="jquery.js"></script>
- <script type="text/javascript" src="search/search.js"></script>
- <script type="text/javascript">
- $(document).ready(function() { searchBox.OnSelectItem(0); });
- </script>
- </head>
- <body>
- <div id="top"><!-- do not remove this div! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
-
-
- <td style="padding-left: 0.5em;">
- <div id="projectname">Britefury Math Library
-
- </div>
-
- </td>
-
-
-
- </tr>
- </tbody>
- </table>
- </div>
- <!-- Generated by Doxygen 1.7.5.1 -->
- <script type="text/javascript">
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- </script>
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="annotated.html"><span>Classes</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- <li>
- <div id="MSearchBox" class="MSearchBoxInactive">
- <span class="left">
- <img id="MSearchSelect" src="search/mag_sel.png"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- alt=""/>
- <input type="text" id="MSearchField" value="Search" accesskey="S"
- onfocus="searchBox.OnSearchFieldFocus(true)"
- onblur="searchBox.OnSearchFieldFocus(false)"
- onkeyup="searchBox.OnSearchFieldChange(event)"/>
- </span><span class="right">
- <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
- </span>
- </div>
- </li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>File Members</span></a></li>
- </ul>
- </div>
- <div class="header">
- <div class="headertitle">
- <div class="title">src/Math/Matrix4.h</div> </div>
- </div>
- <div class="contents">
- <a href="_matrix4_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">//##************************</span>
- <a name="l00002"></a>00002 <span class="comment">//##* This source code is licensed under the terms and conditions of the BSD license,</span>
- <a name="l00003"></a>00003 <span class="comment">//##* the full text of which can be found in the file named 'License.txt' that</span>
- <a name="l00004"></a>00004 <span class="comment">//##* accompanies this code. (C) copyright Geoffrey French 1999-2010.</span>
- <a name="l00005"></a>00005 <span class="comment">//##************************</span>
- <a name="l00006"></a>00006 <span class="comment">/* by: Geoffrey French</span>
- <a name="l00007"></a>00007 <span class="comment"> last revision: 14/Nov/2002</span>
- <a name="l00008"></a>00008 <span class="comment"> title: 4x4 transformation matrix class with mathematical operations.</span>
- <a name="l00009"></a>00009 <span class="comment"></span>
- <a name="l00010"></a>00010 <span class="comment"> Implemented as follows:</span>
- <a name="l00011"></a>00011 <span class="comment"></span>
- <a name="l00012"></a>00012 <span class="comment"> use the macros iMA, iMB,.... iMP to access the members by letter</span>
- <a name="l00013"></a>00013 <span class="comment"> use the macros iMyx where x and y are numbers in the range 0..3 to access the</span>
- <a name="l00014"></a>00014 <span class="comment"> members where x and y are the coordinates of the matrix member</span>
- <a name="l00015"></a>00015 <span class="comment">*/</span>
- <a name="l00016"></a>00016 <span class="preprocessor">#ifndef MATRIX4_H__</span>
- <a name="l00017"></a>00017 <span class="preprocessor"></span><span class="preprocessor">#define MATRIX4_H__</span>
- <a name="l00018"></a>00018 <span class="preprocessor"></span>
- <a name="l00019"></a>00019 <span class="preprocessor">#include <stdio.h></span>
- <a name="l00020"></a>00020
- <a name="l00021"></a>00021 <span class="preprocessor">#include <<a class="code" href="radians_8h.html">Math/radians.h</a>></span>
- <a name="l00022"></a>00022
- <a name="l00023"></a>00023 <span class="preprocessor">#include <<a class="code" href="_vector2_8h.html">Math/Vector2.h</a>></span>
- <a name="l00024"></a>00024 <span class="preprocessor">#include <<a class="code" href="_vector3_8h.html">Math/Vector3.h</a>></span>
- <a name="l00025"></a>00025 <span class="preprocessor">#include <<a class="code" href="_point2_8h.html">Math/Point2.h</a>></span>
- <a name="l00026"></a>00026 <span class="preprocessor">#include <<a class="code" href="_point3_8h.html">Math/Point3.h</a>></span>
- <a name="l00027"></a>00027 <span class="preprocessor">#include <<a class="code" href="_point4_8h.html">Math/Point4.h</a>></span>
- <a name="l00028"></a>00028 <span class="preprocessor">#include <<a class="code" href="_plane_8h.html">Math/Plane.h</a>></span>
- <a name="l00029"></a>00029 <span class="preprocessor">#include <<a class="code" href="_euler_rotation_8h.html">Math/EulerRotation.h</a>></span>
- <a name="l00030"></a>00030 <span class="preprocessor">#include <<a class="code" href="_quaternion_8h.html">Math/Quaternion.h</a>></span>
- <a name="l00031"></a>00031 <span class="preprocessor">#include <<a class="code" href="_segment3_8h.html">Math/Segment3.h</a>></span>
- <a name="l00032"></a>00032 <span class="preprocessor">#include <<a class="code" href="_segment2_8h.html">Math/Segment2.h</a>></span>
- <a name="l00033"></a>00033 <span class="preprocessor">#include <<a class="code" href="_triangle2_8h.html">Math/Triangle2.h</a>></span>
- <a name="l00034"></a>00034 <span class="preprocessor">#include <<a class="code" href="_triangle3_8h.html">Math/Triangle3.h</a>></span>
- <a name="l00035"></a>00035 <span class="preprocessor">#include <<a class="code" href="epsilon_8h.html">Math/epsilon.h</a>></span>
- <a name="l00036"></a>00036
- <a name="l00037"></a>00037
- <a name="l00038"></a>00038
- <a name="l00039"></a>00039 <span class="comment">//declaration of Vector3 operator*(const Vector3 &v, const Matrix4 &m)</span>
- <a name="l00040"></a>00040 <span class="comment">//needed in Matrix4::transformUnit()</span>
- <a name="l00041"></a>00041 <span class="keyword">template</span> <<span class="keyword">typename</span> Real> <span class="keyword">class </span><a class="code" href="class_matrix4.html">Matrix4</a>;
- <a name="l00042"></a>00042 <span class="keyword">template</span> <<span class="keyword">typename</span> Real> <span class="keyword">inline</span> <a class="code" href="class_vector3.html">Vector3<Real></a> <a class="code" href="_matrix4_8h.html#a1297d29e0a3df70f644f376c83e9ebcd">operator*</a>(<span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &v, <span class="keyword">const</span> <a class="code" href="class_matrix4.html">Matrix4<Real></a> &m);
- <a name="l00043"></a>00043
- <a name="l00044"></a>00044
- <a name="l00086"></a><a class="code" href="class_matrix4.html">00086</a> <span class="keyword">template</span> <<span class="keyword">typename</span> Real> <span class="keyword">class </span><a class="code" href="class_matrix4.html">Matrix4</a>
- <a name="l00087"></a>00087 {
- <a name="l00088"></a>00088 <span class="keyword">public</span>:
- <a name="l00089"></a>00089 <span class="keyword">union</span>
- <a name="l00090"></a>00090 {
- <a name="l00091"></a><a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">00091</a> Real <a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">d</a>[16]; <span class="comment">//16 (4x4) floats</span>
- <a name="l00092"></a>00092
- <a name="l00093"></a>00093 <span class="keyword">struct</span>
- <a name="l00094"></a>00094 {
- <a name="l00095"></a><a class="code" href="class_matrix4.html#a7cc28ea065915abaab3f0ab292e59af7">00095</a> Real <a class="code" href="class_matrix4.html#aa554982de848cd1d935350cf60b4d835">iMA</a>, <a class="code" href="class_matrix4.html#ad1c9c9dbbb4aa24d59c2a84580c35add">iME</a>, <a class="code" href="class_matrix4.html#a21bd76eb25edd8cad5612f40e23b028b">iMI</a>, <a class="code" href="class_matrix4.html#a7cc28ea065915abaab3f0ab292e59af7">iMM</a>;
- <a name="l00096"></a><a class="code" href="class_matrix4.html#a70e188ea648953cb3cc516c9510880e2">00096</a> Real <a class="code" href="class_matrix4.html#aeb32b3cfa0c165daca3ee35ef104cc22">iMB</a>, <a class="code" href="class_matrix4.html#a38d958297711f965ee99dfb1b30db85e">iMF</a>, <a class="code" href="class_matrix4.html#a69ceb4b6a45f1b70247eeb7e0b3f5ee0">iMJ</a>, <a class="code" href="class_matrix4.html#a70e188ea648953cb3cc516c9510880e2">iMN</a>;
- <a name="l00097"></a><a class="code" href="class_matrix4.html#aa9dbc58b3ae50a26174481e9d3505e72">00097</a> Real <a class="code" href="class_matrix4.html#a79bff5212ef85df93328acd8ec9ff62a">iMC</a>, <a class="code" href="class_matrix4.html#a58ee570bc94572cdc7fe5b9d10263ea9">iMG</a>, <a class="code" href="class_matrix4.html#a80838d6eeb1bb05f8ee6a6d7115f30c4">iMK</a>, <a class="code" href="class_matrix4.html#aa9dbc58b3ae50a26174481e9d3505e72">iMO</a>;
- <a name="l00098"></a><a class="code" href="class_matrix4.html#ad3f07b2fd344562774e4490950f4253e">00098</a> Real <a class="code" href="class_matrix4.html#a9ef675fbdeaa9afefb54469077ccc846">iMD</a>, <a class="code" href="class_matrix4.html#abd61bdac3d0cab04d382bd970b51e658">iMH</a>, <a class="code" href="class_matrix4.html#a0ac12d4f268bbcc73899b2fa04c4638b">iML</a>, <a class="code" href="class_matrix4.html#ad3f07b2fd344562774e4490950f4253e">iMP</a>;
- <a name="l00099"></a>00099 };
- <a name="l00100"></a>00100
- <a name="l00101"></a>00101 <span class="keyword">struct</span>
- <a name="l00102"></a>00102 {
- <a name="l00103"></a><a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">00103</a> Real <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a>, <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a>, <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a>, <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a>;
- <a name="l00104"></a><a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">00104</a> Real <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a>, <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a>, <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a>, <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a>;
- <a name="l00105"></a><a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">00105</a> Real <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a>, <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a>, <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a>, <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a>;
- <a name="l00106"></a><a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">00106</a> Real <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a>, <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a>, <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a>, <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a>;
- <a name="l00107"></a>00107 };
- <a name="l00108"></a>00108 };
- <a name="l00109"></a>00109
- <a name="l00110"></a>00110
- <a name="l00111"></a>00111
- <a name="l00115"></a><a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">00115</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>()
- <a name="l00116"></a>00116 {
- <a name="l00117"></a>00117 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = (Real)0.0;
- <a name="l00118"></a>00118 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = (Real)0.0;
- <a name="l00119"></a>00119 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = (Real)0.0; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00120"></a>00120 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00121"></a>00121 }
- <a name="l00122"></a>00122
- <a name="l00126"></a><a class="code" href="class_matrix4.html#a8c53ff621ebe756fb5fad129c497ccac">00126</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(Real m00, Real m01, Real m02, Real m03,
- <a name="l00127"></a>00127 Real m10, Real m11, Real m12, Real m13,
- <a name="l00128"></a>00128 Real m20, Real m21, Real m22, Real m23,
- <a name="l00129"></a>00129 Real m30, Real m31, Real m32, Real m33)
- <a name="l00130"></a>00130 {
- <a name="l00131"></a>00131 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = m00; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = m01; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = m02; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = m03;
- <a name="l00132"></a>00132 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = m10; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = m11; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = m12; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = m13;
- <a name="l00133"></a>00133 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = m20; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = m21; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = m22; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = m23;
- <a name="l00134"></a>00134 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = m30; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = m31; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = m32; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = m33;
- <a name="l00135"></a>00135 }
- <a name="l00136"></a>00136
- <a name="l00153"></a><a class="code" href="class_matrix4.html#aa36b735cd66c467167f11e17a30112b3">00153</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &j, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &k)
- <a name="l00154"></a>00154 {
- <a name="l00155"></a>00155 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = k.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = (Real)0.0;
- <a name="l00156"></a>00156 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = k.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = (Real)0.0;
- <a name="l00157"></a>00157 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = i.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = j.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = k.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00158"></a>00158 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00159"></a>00159 }
- <a name="l00160"></a>00160
- <a name="l00178"></a><a class="code" href="class_matrix4.html#a38582ff5813210523a8640952fed8586">00178</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &j, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &k, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &translation)
- <a name="l00179"></a>00179 {
- <a name="l00180"></a>00180 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = k.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = translation.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>;
- <a name="l00181"></a>00181 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = k.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = translation.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>;
- <a name="l00182"></a>00182 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = i.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = j.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = k.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = translation.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>
- <a name="l00183"></a>00183 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00184"></a>00184 }
- <a name="l00185"></a>00185
- <a name="l00203"></a><a class="code" href="class_matrix4.html#a5c71c5bce7ace743a66544816d650174">00203</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_point3.html">Point3<Real></a> &o, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &j, <span class="keyword">const</span> <a class="code" href="class_vector3.html">Vector3<Real></a> &k)
- <a name="l00204"></a>00204 {
- <a name="l00205"></a>00205 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = k.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = o.<a class="code" href="class_point3.html#ac8955e61b82c40e2b7601813decc1ab4">x</a>;
- <a name="l00206"></a>00206 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = k.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = o.<a class="code" href="class_point3.html#a0279229843c1d7e3949003a8234189b6">y</a>;
- <a name="l00207"></a>00207 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = i.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = j.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = k.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = o.<a class="code" href="class_point3.html#a39a2d6679cdd785c360f552c7ae52d6e">z</a>
- <a name="l00208"></a>00208 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00209"></a>00209 }
- <a name="l00210"></a>00210
- <a name="l00234"></a><a class="code" href="class_matrix4.html#aad258e609e36d60d1c3fe9245816ecf1">00234</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_point3.html">Point3<Real></a> &o, <span class="keyword">const</span> <a class="code" href="class_point3.html">Point3<Real></a> &oi, <span class="keyword">const</span> <a class="code" href="class_point3.html">Point3<Real></a> &oj, <span class="keyword">const</span> <a class="code" href="class_point3.html">Point3<Real></a> &ok)
- <a name="l00235"></a>00235 {
- <a name="l00236"></a>00236 <a class="code" href="class_vector3.html">Vector3<Real></a> i = oi - o;
- <a name="l00237"></a>00237 <a class="code" href="class_vector3.html">Vector3<Real></a> j = oj - o;
- <a name="l00238"></a>00238 <a class="code" href="class_vector3.html">Vector3<Real></a> k = ok - o;
- <a name="l00239"></a>00239 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = k.<a class="code" href="class_vector3.html#a7a092c6418ef803c8aab7a79eec9d13b">x</a>; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = o.x;
- <a name="l00240"></a>00240 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = k.<a class="code" href="class_vector3.html#acb7d53b283a9ef20c0d21efd72749c7a">y</a>; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = o.y;
- <a name="l00241"></a>00241 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = i.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = j.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = k.<a class="code" href="class_vector3.html#afe8f021bf6c0a27618a740bce2eec9c2">z</a>; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = o.z
- <a name="l00242"></a>00242 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00243"></a>00243 }
- <a name="l00244"></a>00244
- <a name="l00260"></a><a class="code" href="class_matrix4.html#a8d8df9f6453d2513cd619e17fc37916c">00260</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &j)
- <a name="l00261"></a>00261 {
- <a name="l00262"></a>00262 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = (Real)0.0;
- <a name="l00263"></a>00263 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = (Real)0.0;
- <a name="l00264"></a>00264 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = (Real)0.0; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00265"></a>00265 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00266"></a>00266 }
- <a name="l00267"></a>00267
- <a name="l00284"></a><a class="code" href="class_matrix4.html#a5f0f38e73bed77d8a4876c8bd81db21f">00284</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &j, <span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &translation)
- <a name="l00285"></a>00285 {
- <a name="l00286"></a>00286 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = translation.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>;
- <a name="l00287"></a>00287 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = translation.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>;
- <a name="l00288"></a>00288 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = (Real)0.0; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00289"></a>00289 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00290"></a>00290 }
- <a name="l00291"></a>00291
- <a name="l00308"></a><a class="code" href="class_matrix4.html#a410c330790a99400b35aaae1d2810a76">00308</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_point2.html">Point2<Real></a> &o, <span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &i, <span class="keyword">const</span> <a class="code" href="class_vector2.html">Vector2<Real></a> &j)
- <a name="l00309"></a>00309 {
- <a name="l00310"></a>00310 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = o.<a class="code" href="class_point2.html#ab813862c1eb59b34df82412a09d73b8b">x</a>;
- <a name="l00311"></a>00311 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = o.<a class="code" href="class_point2.html#af6eb4f44dcbf864ef2f92dcaa5203983">y</a>;
- <a name="l00312"></a>00312 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = (Real)0.0; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00313"></a>00313 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00314"></a>00314 }
- <a name="l00315"></a>00315
- <a name="l00337"></a><a class="code" href="class_matrix4.html#a2b7fdb8a218fee4cc3338e02988e9c8d">00337</a> <span class="keyword">inline</span> <a class="code" href="class_matrix4.html#aaada5087a8dbf2fea0053e12ba617a36">Matrix4</a>(<span class="keyword">const</span> <a class="code" href="class_point2.html">Point2<Real></a> &o, <span class="keyword">const</span> <a class="code" href="class_point2.html">Point2<Real></a> &oi, <span class="keyword">const</span> <a class="code" href="class_point2.html">Point2<Real></a> &oj)
- <a name="l00338"></a>00338 {
- <a name="l00339"></a>00339 <a class="code" href="class_vector2.html">Vector2<Real></a> i = oi - o;
- <a name="l00340"></a>00340 <a class="code" href="class_vector2.html">Vector2<Real></a> j = oj - o;
- <a name="l00341"></a>00341 <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> = i.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> = j.<a class="code" href="class_vector2.html#a88ff786e41deb0417a4a5395e3faa2c5">x</a>; <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> = (Real)o.x;
- <a name="l00342"></a>00342 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> = i.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> = j.<a class="code" href="class_vector2.html#ae75ee05f767de42f759a5bf2578d2ef6">y</a>; <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> = (Real)o.y;
- <a name="l00343"></a>00343 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> = (Real)0.0; <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> = (Real)1.0; <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> = (Real)0.0;
- <a name="l00344"></a>00344 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6f255">iM32</a> = (Real)0.0; <a class="code" href="class_matrix4.html#a093715aa61dc2c4b482aeb73b3839bfa">iM33</a> = (Real)1.0;
- <a name="l00345"></a>00345 }
- <a name="l00346"></a>00346
- <a name="l00347"></a>00347
- <a name="l00348"></a>00348
- <a name="l00349"></a>00349
- <a name="l00353"></a><a class="code" href="class_matrix4.html#a564d92ec47baa5e4dbd60b2893584725">00353</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="class_matrix4.html#a564d92ec47baa5e4dbd60b2893584725">read</a>(FILE *f)
- <a name="l00354"></a>00354 {
- <a name="l00355"></a>00355 fread( <a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">d</a>, <span class="keyword">sizeof</span>(Real), 16, f );
- <a name="l00356"></a>00356 }
- <a name="l00357"></a>00357
- <a name="l00361"></a><a class="code" href="class_matrix4.html#aded31197cac8768e67189af920f4d269">00361</a> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="class_matrix4.html#aded31197cac8768e67189af920f4d269">write</a>(FILE *f)<span class="keyword"> const</span>
- <a name="l00362"></a>00362 <span class="keyword"> </span>{
- <a name="l00363"></a>00363 fwrite( <a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">d</a>, <span class="keyword">sizeof</span>(Real), 16, f );
- <a name="l00364"></a>00364 }
- <a name="l00365"></a>00365
- <a name="l00366"></a>00366
- <a name="l00367"></a>00367
- <a name="l00368"></a>00368
- <a name="l00372"></a><a class="code" href="class_matrix4.html#a68348c00b6e31e627fb4c2045325a876">00372</a> <span class="keyword">inline</span> Real & <a class="code" href="class_matrix4.html#a68348c00b6e31e627fb4c2045325a876">at</a>(<span class="keywordtype">int</span> i, <span class="keywordtype">int</span> j)
- <a name="l00373"></a>00373 {
- <a name="l00374"></a>00374 <span class="keywordflow">return</span> <a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">d</a>[ i*4 + j ];
- <a name="l00375"></a>00375 }
- <a name="l00376"></a>00376
- <a name="l00380"></a><a class="code" href="class_matrix4.html#a93eb12147ed9c3ccf2991bc6e78852dd">00380</a> <span class="keyword">inline</span> <span class="keyword">const</span> Real & <a class="code" href="class_matrix4.html#a68348c00b6e31e627fb4c2045325a876">at</a>(<span class="keywordtype">int</span> i, <span class="keywordtype">int</span> j)<span class="keyword"> const</span>
- <a name="l00381"></a>00381 <span class="keyword"> </span>{
- <a name="l00382"></a>00382 <span class="keywordflow">return</span> <a class="code" href="class_matrix4.html#a4b456ca8031e6ea32d44f7a49ec57f3e">d</a>[ i*4 + j ];
- <a name="l00383"></a>00383 }
- <a name="l00384"></a>00384
- <a name="l00385"></a>00385
- <a name="l00389"></a><a class="code" href="class_matrix4.html#a886ef26496586ea09a0917e1c7a41085">00389</a> <span class="keyword">inline</span> <span class="keywordtype">bool</span> <a class="code" href="class_matrix4.html#a886ef26496586ea09a0917e1c7a41085">operator==</a>(<span class="keyword">const</span> <a class="code" href="class_matrix4.html">Matrix4<Real></a> &m)
- <a name="l00390"></a>00390 {
- <a name="l00391"></a>00391 <span class="keywordflow">return</span> <a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> == m.<a class="code" href="class_matrix4.html#a76d756154741216ac2f73fb9e9f89006">iM00</a> && <a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> == m.<a class="code" href="class_matrix4.html#a03cea929e9aeb7f8472ecd057f883393">iM01</a> && <a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> == m.<a class="code" href="class_matrix4.html#a258ee1d48fe0d0124d8234834df25a38">iM02</a> && <a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> == m.<a class="code" href="class_matrix4.html#a67e3eb6e2754a9ef6619153b87416f98">iM03</a> &&
- <a name="l00392"></a>00392 <a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> == m.<a class="code" href="class_matrix4.html#aed0bbe3e9e436ceeaeebbbd93c697a63">iM10</a> && <a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> == m.<a class="code" href="class_matrix4.html#a1c9b84f47f6ed1bb795c9a25e1ebab40">iM11</a> && <a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> == m.<a class="code" href="class_matrix4.html#a8afc47330561af81f1edca7f1aab5362">iM12</a> && <a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> == m.<a class="code" href="class_matrix4.html#a5bd1b74ba207b157a99d09af2b5ccef5">iM13</a> &&
- <a name="l00393"></a>00393 <a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> == m.<a class="code" href="class_matrix4.html#a93acc31d5e459f2928ff2135274bcd30">iM20</a> && <a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> == m.<a class="code" href="class_matrix4.html#afdb999b0012aa5f02104f77342a4e113">iM21</a> && <a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> == m.<a class="code" href="class_matrix4.html#a20639ce0e5de5f6ddb0b1efed8218c23">iM22</a> && <a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> == m.<a class="code" href="class_matrix4.html#a39bc3d9a332e3d69375ec53c10553c52">iM23</a> &&
- <a name="l00394"></a>00394 <a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> == m.<a class="code" href="class_matrix4.html#a66fefd8bf8ee98d0dbc02ea1eb59f65a">iM30</a> && <a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> == m.<a class="code" href="class_matrix4.html#a4df8a6008c153fe28f6e161b36719481">iM31</a> && <a class="code" href="class_matrix4.html#a14be19ff0ceef2ed5920b67dd8e6…
Large files files are truncated, but you can click here to view the full file