248 lines
18 KiB
HTML
248 lines
18 KiB
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0">
|
|
<title>etk Library</title>
|
|
<link rel="stylesheet" href="base.css">
|
|
<link rel="stylesheet" href="menu.css">
|
|
</head>
|
|
<body>
|
|
<div class="navbar navbar-fixed-top">
|
|
<div class="container">
|
|
<h1><a href="index.html">etk library</a></h1>
|
|
<h4><a href="http://github.com/heeroyui/etk/"> [ sources ]</a></h4>
|
|
<h3>API:</h3> <div id="menu">
|
|
<ul class="niveau1">
|
|
<li class="sousmenu"><a href="namespace_etk.html">etk</a>
|
|
<ul class="niveau2">
|
|
<li><a href="namespace_etk__log.html">log</a>
|
|
</li>
|
|
<li><a href="namespace_etk__color.html">color</a>
|
|
</li>
|
|
<li><a href="namespace_etk__tool.html">tool</a>
|
|
</li>
|
|
<li><a href="namespace_etk__archive.html">archive</a>
|
|
</li>
|
|
<li><a href="namespace_etk__theme.html">theme</a>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
<li><a href="namespace_u32char.html">u32char</a>
|
|
</li>
|
|
<li><a href="namespace_utf8.html">utf8</a>
|
|
</li>
|
|
<li><a href="namespace_std.html">std</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<br/><h3>Associate libraries:</h3><div id="menu">
|
|
<ul class="niveau1"><li><a href="../ewol/index.html">ewol</a></li>
|
|
</ul><ul class="niveau1"><li><a href="../ejson/index.html">ejson</a></li>
|
|
</ul><ul class="niveau1"><li><a href="../egami/index.html">egami</a></li>
|
|
</ul><ul class="niveau1"><li><a href="../ege/index.html">ege</a></li>
|
|
</ul><ul class="niveau1"><li><a href="../esvg/index.html">esvg</a></li>
|
|
</ul><ul class="niveau1"><li><a href="../exml/index.html">exml</a></li>
|
|
</ul></div>
|
|
<br/>
|
|
<br/>
|
|
<br/>
|
|
<br/>
|
|
<br/>
|
|
<br/>
|
|
</div>
|
|
</div>
|
|
<div class="container" id="content">
|
|
<h1>class: etk::Matrix4</h1><hr/><h2>Description:</h2>
|
|
|
|
<br/><br/>
|
|
<h2>Constructor and Destructor:</h2>
|
|
<pre>
|
|
+ <a class="code-function" href="#6356">Matrix4</a> ();<br/>+ <a class="code-function" href="#6357">Matrix4</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/>+ <a class="code-function" href="#6359">Matrix4</a> (<span class="code-type" >float</span> <span class="code-argument">a1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d4</span>);<br/>+ <a class="code-function" href="#6376">Matrix4</a> (<span class="code-type" >float</span>* <span class="code-argument">obj</span>);<br/>+ <span class="code-storage-keyword">virtual</span> <a class="code-function" href="#6378">~Matrix4</a> ();<br/></pre>
|
|
<br/>
|
|
<h2>Synopsis:</h2>
|
|
<pre>
|
|
+ <span class="code-type" >float</span> <a class="code-member" href="#6354">m_mat</a>;<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6355">identity</a> ();<br/>+ <span class="code-storage-keyword">const</span> Matrix4 & <a class="code-function" href="#6379">operator =</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/>+ <span class="code-type" >bool</span> <a class="code-function" href="#6381">operator ==</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-type" >bool</span> <a class="code-function" href="#6383">operator !=</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-storage-keyword">const</span> Matrix4 & <a class="code-function" href="#6385">operator +=</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/>+ Matrix4 <a class="code-function" href="#6387">operator +</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-storage-keyword">const</span> Matrix4 & <a class="code-function" href="#6389">operator -=</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/>+ Matrix4 <a class="code-function" href="#6391">operator -</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-storage-keyword">const</span> Matrix4 & <a class="code-function" href="#6393">operator *=</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/>+ Matrix4 <a class="code-function" href="#6395">operator *</a> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/>+ vec3 <a class="code-function" href="#6397">operator *</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">point</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6399">transpose</a> ();<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6400">scale</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">p</span>);<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6402">scale</a> (<span class="code-type" >float</span> <span class="code-argument">sx</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">sy</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">sz</span>);<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6406">rotate</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">vect</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">angleRad</span>);<br/>+ <span class="code-type" >void</span> <a class="code-function" href="#6409">translate</a> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">vect</span>);<br/>+ <span class="code-type" >float</span> <a class="code-function" href="#6411">coFactor</a> (<span class="code-type" >int32_t</span> <span class="code-argument">row</span>,<br/> <span class="code-type" >int32_t</span> <span class="code-argument">col</span>) <span class="code-storage-keyword">const</span>;<br/>+ <span class="code-type" >float</span> <a class="code-function" href="#6414">determinant</a> () <span class="code-storage-keyword">const</span>;<br/>+ Matrix4 <a class="code-function" href="#6415">invert</a> ();<br/></pre>
|
|
<br/>
|
|
<h2>Detail:</h2>
|
|
<a id="6354"/><a id="6355"/><h3>m_mat</h3><pre>
|
|
+ <span class="code-type" >float</span> <span class="code-member">m_mat</span>;<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6356"/><h3>identity</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">identity</span> ();<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6357"/><h3>Matrix4</h3><pre>
|
|
+ <span class="code-function">Matrix4</span> ();<br/></pre>
|
|
|
|
Constructor<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6359"/><h3>Matrix4</h3><pre>
|
|
+ <span class="code-function">Matrix4</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6376"/><h3>Matrix4</h3><pre>
|
|
+ <span class="code-function">Matrix4</span> (<span class="code-type" >float</span> <span class="code-argument">a1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d1</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d2</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d3</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">a4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">b4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">c4</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">d4</span>);<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6378"/><h3>Matrix4</h3><pre>
|
|
+ <span class="code-function">Matrix4</span> (<span class="code-type" >float</span>* <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6379"/><h3>~Matrix4</h3><pre>
|
|
+ <span class="code-storage-keyword">virtual</span> <span class="code-function">~Matrix4</span> ();<br/></pre>
|
|
|
|
Destructor<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6381"/><h3>operator =</h3><pre>
|
|
+ <span class="code-storage-keyword">const</span> Matrix4 & <span class="code-function">operator =</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
= assigment<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6383"/><h3>operator ==</h3><pre>
|
|
+ <span class="code-type" >bool</span> <span class="code-function">operator ==</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
== operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6385"/><h3>operator !=</h3><pre>
|
|
+ <span class="code-type" >bool</span> <span class="code-function">operator !=</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
!= operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6387"/><h3>operator +=</h3><pre>
|
|
+ <span class="code-storage-keyword">const</span> Matrix4 & <span class="code-function">operator +=</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
+= operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6389"/><h3>operator +</h3><pre>
|
|
+ Matrix4 <span class="code-function">operator +</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
+ operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6391"/><h3>operator -=</h3><pre>
|
|
+ <span class="code-storage-keyword">const</span> Matrix4 & <span class="code-function">operator -=</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
-= operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6393"/><h3>operator -</h3><pre>
|
|
+ Matrix4 <span class="code-function">operator -</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
- operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6395"/><h3>operator *=</h3><pre>
|
|
+ <span class="code-storage-keyword">const</span> Matrix4 & <span class="code-function">operator *=</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>);<br/></pre>
|
|
|
|
= operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6397"/><h3>operator *</h3><pre>
|
|
+ Matrix4 <span class="code-function">operator *</span> (<span class="code-storage-keyword">const</span> Matrix4 & <span class="code-argument">obj</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
operator<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6399"/><h3>operator *</h3><pre>
|
|
+ vec3 <span class="code-function">operator *</span> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">point</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6400"/><h3>transpose</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">transpose</span> ();<br/></pre>
|
|
|
|
other basic function :<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6402"/><h3>scale</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">scale</span> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">p</span>);<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6406"/><h3>scale</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">scale</span> (<span class="code-type" >float</span> <span class="code-argument">sx</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">sy</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">sz</span>);<br/></pre>
|
|
|
|
<br/>
|
|
<br/>
|
|
<hr/>
|
|
<a id="6409"/><h3>rotate</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">rotate</span> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">vect</span>,<br/> <span class="code-type" >float</span> <span class="code-argument">angleRad</span>);<br/></pre>
|
|
Makes a rotation matrix about an arbitrary axis.<br/><ul>
|
|
<table class="parameter-list">
|
|
<td><b>Parameter [input]:</b></td><td><span class="code-argument">vect</span> </td><td> vector to apply the angle.</td></tr>
|
|
<td><b>Parameter [input]:</b></td><td><span class="code-argument">angleRad</span> </td><td> angle to apply.</td></tr>
|
|
</table>
|
|
</ul>
|
|
|
|
<br/>
|
|
<hr/>
|
|
<a id="6411"/><h3>translate</h3><pre>
|
|
+ <span class="code-type" >void</span> <span class="code-function">translate</span> (<span class="code-storage-keyword">const</span> vec3 & <span class="code-argument">vect</span>);<br/></pre>
|
|
Makes a translation of the matrix<br/><ul>
|
|
<table class="parameter-list">
|
|
<td><b>Parameter [input]:</b></td><td><span class="code-argument">vect</span> </td><td> Translation to apply.</td></tr>
|
|
</table>
|
|
</ul>
|
|
|
|
<br/>
|
|
<hr/>
|
|
<a id="6414"/><h3>coFactor</h3><pre>
|
|
+ <span class="code-type" >float</span> <span class="code-function">coFactor</span> (<span class="code-type" >int32_t</span> <span class="code-argument">row</span>,<br/> <span class="code-type" >int32_t</span> <span class="code-argument">col</span>) <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
Computes a cofactor. Used for matrix inversion.<br/><ul>
|
|
<table class="parameter-list">
|
|
<td><b>Parameter [input]:</b></td><td><span class="code-argument">row</span> </td><td> Id of raw.</td></tr>
|
|
<td><b>Parameter [input]:</b></td><td><span class="code-argument">col</span> </td><td> Id of colomn.</td></tr>
|
|
<tr><td><b>Return: </b></td><td></td><td>the coFactorValue.</td></tr></table>
|
|
</ul>
|
|
|
|
<br/>
|
|
<hr/>
|
|
<a id="6415"/><h3>determinant</h3><pre>
|
|
+ <span class="code-type" >float</span> <span class="code-function">determinant</span> () <span class="code-storage-keyword">const</span>;<br/></pre>
|
|
Computes the determinant of the matrix.<br/><ul>
|
|
<table class="parameter-list">
|
|
<tr><td><b>Return: </b></td><td></td><td>The determinent Value.</td></tr></table>
|
|
</ul>
|
|
|
|
<br/>
|
|
<hr/>
|
|
<h3>invert</h3><pre>
|
|
+ Matrix4 <span class="code-function">invert</span> ();<br/></pre>
|
|
Inverts the matrix.<br/><b>Note:</b> The determinant must be != 0, otherwithe the matrix can't be inverted.<br/> <ul>
|
|
<table class="parameter-list">
|
|
<tr><td><b>Return: </b></td><td></td><td>The inverted matrix.</td></tr></table>
|
|
</ul>
|
|
|
|
<br/>
|
|
<hr/>
|
|
</div>
|
|
<script>
|
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
|
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
|
|
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
|
|
})(window,document,'script','//www.google-analytics.com/analytics.js','ga');
|
|
ga('create', 'UA-46753803-1', 'heeroyui.github.io');
|
|
ga('send', 'pageview');
|
|
</script>
|
|
</body>
|
|
</html>
|