Eule/Doxygen/build/classEule_1_1Vector3.html

1673 lines
119 KiB
HTML
Raw Normal View History

2021-11-15 11:35:45 +01:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Leonetienne/Eule: Eule::Vector3&lt; T &gt; Class Template Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/x-mathjax-config">
MathJax.Hub.Config({
extensions: ["tex2jax.js"],
jax: ["input/TeX","output/HTML-CSS"],
});
</script>
<script type="text/javascript" async="async" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/MathJax.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">Leonetienne/Eule
</div>
<div id="projectbrief">Homemade math library, mainly targetted towards computer graphics</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'Search');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
initMenu('',true,false,'search.php','Search');
$(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
onmouseover="return searchBox.OnSearchSelectShow()"
onmouseout="return searchBox.OnSearchSelectHide()"
onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>
<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0"
name="MSearchResults" id="MSearchResults">
</iframe>
</div>
<div id="nav-path" class="navpath">
<ul>
<li class="navelem"><a class="el" href="namespaceEule.html">Eule</a></li><li class="navelem"><a class="el" href="classEule_1_1Vector3.html">Vector3</a></li> </ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-attribs">Public Attributes</a> &#124;
<a href="#pub-static-attribs">Static Public Attributes</a> &#124;
<a href="#friends">Friends</a> &#124;
<a href="classEule_1_1Vector3-members.html">List of all members</a> </div>
<div class="headertitle">
<div class="title">Eule::Vector3&lt; T &gt; Class Template Reference</div> </div>
</div><!--header-->
<div class="contents">
<p>Representation of a 3d vector.
<a href="classEule_1_1Vector3.html#details">More...</a></p>
<p><code>#include &lt;<a class="el" href="Matrix4x4_8h_source.html">Matrix4x4.h</a>&gt;</code></p>
<div class="dynheader">
Collaboration diagram for Eule::Vector3&lt; T &gt;:</div>
<div class="dyncontent">
<div class="center"><img src="classEule_1_1Vector3__coll__graph.png" border="0" usemap="#Eule_1_1Vector3_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
<map name="Eule_1_1Vector3_3_01T_01_4_coll__map" id="Eule_1_1Vector3_3_01T_01_4_coll__map">
<area shape="rect" title="Representation of a 3d vector." alt="" coords="23,288,169,315"/>
<area shape="rect" href="classEule_1_1Vector3.html" title=" " alt="" coords="5,51,187,77"/>
</map>
<center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr class="memitem:abba435897a7050d8c111d703c5bb3eb8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#abba435897a7050d8c111d703c5bb3eb8">Vector3</a> ()</td></tr>
<tr class="separator:abba435897a7050d8c111d703c5bb3eb8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab43c649b5f80f80660ce83a28697f1e9"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ab43c649b5f80f80660ce83a28697f1e9">Vector3</a> (T _x, T _y, T _z)</td></tr>
<tr class="separator:ab43c649b5f80f80660ce83a28697f1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac485bad4d2a077e0ab2a2bc68e223740"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ac485bad4d2a077e0ab2a2bc68e223740">Vector3</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other)=default</td></tr>
<tr class="separator:ac485bad4d2a077e0ab2a2bc68e223740"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9c6dc41aad5e44f30baad3c3864148b8"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a9c6dc41aad5e44f30baad3c3864148b8">Vector3</a> (<a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&amp;other) noexcept=default</td></tr>
<tr class="separator:a9c6dc41aad5e44f30baad3c3864148b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6cbc1516e045c0334f8bf8a1dcd6ca91"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a6cbc1516e045c0334f8bf8a1dcd6ca91">DotProduct</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="memdesc:a6cbc1516e045c0334f8bf8a1dcd6ca91"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will compute the dot product to another <a class="el" href="classEule_1_1Vector3.html" title="Representation of a 3d vector.">Vector3</a>. <a href="classEule_1_1Vector3.html#a6cbc1516e045c0334f8bf8a1dcd6ca91">More...</a><br /></td></tr>
<tr class="separator:a6cbc1516e045c0334f8bf8a1dcd6ca91"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abd62a5f6b0f380491cf80d70ed2e5317"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#abd62a5f6b0f380491cf80d70ed2e5317">CrossProduct</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="memdesc:abd62a5f6b0f380491cf80d70ed2e5317"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will compute the cross product to another <a class="el" href="classEule_1_1Vector3.html" title="Representation of a 3d vector.">Vector3</a>. <a href="classEule_1_1Vector3.html#abd62a5f6b0f380491cf80d70ed2e5317">More...</a><br /></td></tr>
<tr class="separator:abd62a5f6b0f380491cf80d70ed2e5317"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2f078dd733634a321157d23979a4162"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ad2f078dd733634a321157d23979a4162">SqrMagnitude</a> () const</td></tr>
<tr class="memdesc:ad2f078dd733634a321157d23979a4162"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will compute the square magnitude. <a href="classEule_1_1Vector3.html#ad2f078dd733634a321157d23979a4162">More...</a><br /></td></tr>
<tr class="separator:ad2f078dd733634a321157d23979a4162"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a96e6e436600d1420250ef2868854988d"><td class="memItemLeft" align="right" valign="top">double&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a96e6e436600d1420250ef2868854988d">Magnitude</a> () const</td></tr>
<tr class="memdesc:a96e6e436600d1420250ef2868854988d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will compute the magnitude. <a href="classEule_1_1Vector3.html#a96e6e436600d1420250ef2868854988d">More...</a><br /></td></tr>
<tr class="separator:a96e6e436600d1420250ef2868854988d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4650f19df9b05d941d0fbc29ba59d980"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a4650f19df9b05d941d0fbc29ba59d980">Normalize</a> () const</td></tr>
<tr class="memdesc:a4650f19df9b05d941d0fbc29ba59d980"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will return the normalization of this vector. <a href="classEule_1_1Vector3.html#a4650f19df9b05d941d0fbc29ba59d980">More...</a><br /></td></tr>
<tr class="separator:a4650f19df9b05d941d0fbc29ba59d980"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69f80925d46f3630a2242b44ddb43a56"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a69f80925d46f3630a2242b44ddb43a56">NormalizeSelf</a> ()</td></tr>
<tr class="memdesc:a69f80925d46f3630a2242b44ddb43a56"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will normalize this vector. <a href="classEule_1_1Vector3.html#a69f80925d46f3630a2242b44ddb43a56">More...</a><br /></td></tr>
<tr class="separator:a69f80925d46f3630a2242b44ddb43a56"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afbfdd011a51ae697bdf0d297f2f6aa95"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#afbfdd011a51ae697bdf0d297f2f6aa95">VectorScale</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;scalar) const</td></tr>
<tr class="memdesc:afbfdd011a51ae697bdf0d297f2f6aa95"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will scale self.n by scalar.n. <a href="classEule_1_1Vector3.html#afbfdd011a51ae697bdf0d297f2f6aa95">More...</a><br /></td></tr>
<tr class="separator:afbfdd011a51ae697bdf0d297f2f6aa95"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8fb48e9a527d5e6fadb3b3102fa8f4c3"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a8fb48e9a527d5e6fadb3b3102fa8f4c3">LerpSelf</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other, double t)</td></tr>
<tr class="memdesc:a8fb48e9a527d5e6fadb3b3102fa8f4c3"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will lerp itself towards other by t. <a href="classEule_1_1Vector3.html#a8fb48e9a527d5e6fadb3b3102fa8f4c3">More...</a><br /></td></tr>
<tr class="separator:a8fb48e9a527d5e6fadb3b3102fa8f4c3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:add2f96155edb1159b53725932d951f1f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#add2f96155edb1159b53725932d951f1f">Lerp</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other, double t) const</td></tr>
<tr class="memdesc:add2f96155edb1159b53725932d951f1f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will return a lerp result between this and another vector. <a href="classEule_1_1Vector3.html#add2f96155edb1159b53725932d951f1f">More...</a><br /></td></tr>
<tr class="separator:add2f96155edb1159b53725932d951f1f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9613bb7d4981c921b8310d5eedf59b07"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a9613bb7d4981c921b8310d5eedf59b07">Similar</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other, double epsilon=0.00001) const</td></tr>
<tr class="memdesc:a9613bb7d4981c921b8310d5eedf59b07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will compare if two vectors are similar to a certain epsilon value. <a href="classEule_1_1Vector3.html#a9613bb7d4981c921b8310d5eedf59b07">More...</a><br /></td></tr>
<tr class="separator:a9613bb7d4981c921b8310d5eedf59b07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0510707e23eb81c4a799dffc7b0ce127"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; int &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a0510707e23eb81c4a799dffc7b0ce127">ToInt</a> () const</td></tr>
<tr class="memdesc:a0510707e23eb81c4a799dffc7b0ce127"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will convert this vector to a Vector3i. <a href="classEule_1_1Vector3.html#a0510707e23eb81c4a799dffc7b0ce127">More...</a><br /></td></tr>
<tr class="separator:a0510707e23eb81c4a799dffc7b0ce127"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a04560b5fa992b7fa455fc4d406928df8"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a04560b5fa992b7fa455fc4d406928df8">ToDouble</a> () const</td></tr>
<tr class="memdesc:a04560b5fa992b7fa455fc4d406928df8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Will convert this vector to a Vector3d. <a href="classEule_1_1Vector3.html#a04560b5fa992b7fa455fc4d406928df8">More...</a><br /></td></tr>
<tr class="separator:a04560b5fa992b7fa455fc4d406928df8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a71f307ae6427a4d6df51647c9d76504b"><td class="memItemLeft" align="right" valign="top">T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a71f307ae6427a4d6df51647c9d76504b">operator[]</a> (std::size_t idx)</td></tr>
<tr class="separator:a71f307ae6427a4d6df51647c9d76504b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c028a7bab65693aff5d1a7c992326dc"><td class="memItemLeft" align="right" valign="top">const T &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a4c028a7bab65693aff5d1a7c992326dc">operator[]</a> (std::size_t idx) const</td></tr>
<tr class="separator:a4c028a7bab65693aff5d1a7c992326dc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae094943bacbd043b41f9b34bdb51542e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ae094943bacbd043b41f9b34bdb51542e">operator+</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="separator:ae094943bacbd043b41f9b34bdb51542e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac6fe920a34552925aff185f335b13e14"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ac6fe920a34552925aff185f335b13e14">operator+=</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other)</td></tr>
<tr class="separator:ac6fe920a34552925aff185f335b13e14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88273031482c057795e05ea25218ea4b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a88273031482c057795e05ea25218ea4b">operator-</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="separator:a88273031482c057795e05ea25218ea4b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af1207f3bf66aaf0fa781d43db40b8006"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#af1207f3bf66aaf0fa781d43db40b8006">operator-=</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other)</td></tr>
<tr class="separator:af1207f3bf66aaf0fa781d43db40b8006"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afd6db19e66c398814f79bfd454682548"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#afd6db19e66c398814f79bfd454682548">operator*</a> (const T scale) const</td></tr>
<tr class="separator:afd6db19e66c398814f79bfd454682548"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a6e66693d2a1e5cf4dd7cca94ad49db"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a7a6e66693d2a1e5cf4dd7cca94ad49db">operator*=</a> (const T scale)</td></tr>
<tr class="separator:a7a6e66693d2a1e5cf4dd7cca94ad49db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9bace50e1db42029d93fbd8a417fc70"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#aa9bace50e1db42029d93fbd8a417fc70">operator/</a> (const T scale) const</td></tr>
<tr class="separator:aa9bace50e1db42029d93fbd8a417fc70"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69f00f05eda60630d48499067297e431"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a69f00f05eda60630d48499067297e431">operator/=</a> (const T scale)</td></tr>
<tr class="separator:a69f00f05eda60630d48499067297e431"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab7148d41a5184ee4e2948cfdc5eb53f5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ab7148d41a5184ee4e2948cfdc5eb53f5">operator*</a> (const <a class="el" href="classEule_1_1Matrix4x4.html">Matrix4x4</a> &amp;mat) const</td></tr>
<tr class="separator:ab7148d41a5184ee4e2948cfdc5eb53f5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2c3254704c4bf900277d2205f55f4157"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a2c3254704c4bf900277d2205f55f4157">operator*=</a> (const <a class="el" href="classEule_1_1Matrix4x4.html">Matrix4x4</a> &amp;mat)</td></tr>
<tr class="separator:a2c3254704c4bf900277d2205f55f4157"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a11f2449516a8787f4cce227f12ae2f03"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a11f2449516a8787f4cce227f12ae2f03">operator-</a> () const</td></tr>
<tr class="separator:a11f2449516a8787f4cce227f12ae2f03"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0bdcd7104775000964029ef94e8a3b6a"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a0bdcd7104775000964029ef94e8a3b6a">operator Vector2&lt; T &gt;</a> () const</td></tr>
<tr class="separator:a0bdcd7104775000964029ef94e8a3b6a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a67d1daadee40fbaada3b5c3b4b4b7e79"><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a67d1daadee40fbaada3b5c3b4b4b7e79">operator Vector4&lt; T &gt;</a> () const</td></tr>
<tr class="memdesc:a67d1daadee40fbaada3b5c3b4b4b7e79"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conversion method. <a href="classEule_1_1Vector3.html#a67d1daadee40fbaada3b5c3b4b4b7e79">More...</a><br /></td></tr>
<tr class="separator:a67d1daadee40fbaada3b5c3b4b4b7e79"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9e725f7a3bf0fb822acf9418dc950ad5"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a9e725f7a3bf0fb822acf9418dc950ad5">operator=</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other)</td></tr>
<tr class="memdesc:a9e725f7a3bf0fb822acf9418dc950ad5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Conversion method. <a href="classEule_1_1Vector3.html#a9e725f7a3bf0fb822acf9418dc950ad5">More...</a><br /></td></tr>
<tr class="separator:a9e725f7a3bf0fb822acf9418dc950ad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a68cd4f7804a47455d5a5af9cc6b66e38"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a68cd4f7804a47455d5a5af9cc6b66e38">operator=</a> (<a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&amp;other) noexcept</td></tr>
<tr class="separator:a68cd4f7804a47455d5a5af9cc6b66e38"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8619be9756e498c50158c5dac275262e"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a8619be9756e498c50158c5dac275262e">operator==</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="separator:a8619be9756e498c50158c5dac275262e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad71e5d9e7c46e63d226c180a2d8c0beb"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ad71e5d9e7c46e63d226c180a2d8c0beb">operator!=</a> (const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;other) const</td></tr>
<tr class="separator:ad71e5d9e7c46e63d226c180a2d8c0beb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Public Attributes</h2></td></tr>
<tr class="memitem:a3d7770a583354b1dfc2f6af1092adc1b"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a></td></tr>
<tr class="separator:a3d7770a583354b1dfc2f6af1092adc1b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a716e038c7b599bc5c741dfc0a3c42146"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a></td></tr>
<tr class="separator:a716e038c7b599bc5c741dfc0a3c42146"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a754b1a46c44a0fde99e670e174dba674"><td class="memItemLeft" align="right" valign="top">T&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></td></tr>
<tr class="separator:a754b1a46c44a0fde99e670e174dba674"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-attribs"></a>
Static Public Attributes</h2></td></tr>
<tr class="memitem:a7508f8b060773b00cd40df94d628d7b6"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a7508f8b060773b00cd40df94d628d7b6">up</a></td></tr>
<tr class="separator:a7508f8b060773b00cd40df94d628d7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac44e82051be457c78f6428859482f848"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#ac44e82051be457c78f6428859482f848">down</a></td></tr>
<tr class="separator:ac44e82051be457c78f6428859482f848"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1febd6152b8964147229242630b8c8f0"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a1febd6152b8964147229242630b8c8f0">right</a></td></tr>
<tr class="separator:a1febd6152b8964147229242630b8c8f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37949a2f74ceb05ea1797be34c42989a"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a37949a2f74ceb05ea1797be34c42989a">left</a></td></tr>
<tr class="separator:a37949a2f74ceb05ea1797be34c42989a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a791d893f68f2aee85287ab3ab7612ff0"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a791d893f68f2aee85287ab3ab7612ff0">forward</a></td></tr>
<tr class="separator:a791d893f68f2aee85287ab3ab7612ff0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a34083239eb29eaf4614d09d4d7014b06"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a34083239eb29eaf4614d09d4d7014b06">backward</a></td></tr>
<tr class="separator:a34083239eb29eaf4614d09d4d7014b06"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46a389aa258dc615650ffd7e98e3e482"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a46a389aa258dc615650ffd7e98e3e482">one</a></td></tr>
<tr class="separator:a46a389aa258dc615650ffd7e98e3e482"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1f0b4bb9f5533e3a134310d702bbfb33"><td class="memItemLeft" align="right" valign="top">static const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a1f0b4bb9f5533e3a134310d702bbfb33">zero</a></td></tr>
<tr class="separator:a1f0b4bb9f5533e3a134310d702bbfb33"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="friends"></a>
Friends</h2></td></tr>
<tr class="memitem:a5705993a4489fc62d73b85f3654261cf"><td class="memItemLeft" align="right" valign="top">std::ostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a5705993a4489fc62d73b85f3654261cf">operator&lt;&lt;</a> (std::ostream &amp;os, const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;v)</td></tr>
<tr class="separator:a5705993a4489fc62d73b85f3654261cf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a062adbc281326979ec3f5f71052d0deb"><td class="memItemLeft" align="right" valign="top">std::wostream &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classEule_1_1Vector3.html#a062adbc281326979ec3f5f71052d0deb">operator&lt;&lt;</a> (std::wostream &amp;os, const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;v)</td></tr>
<tr class="separator:a062adbc281326979ec3f5f71052d0deb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><h3>template&lt;typename T&gt;<br />
class Eule::Vector3&lt; T &gt;</h3>
<p>Representation of a 3d vector. </p>
<p>Contains a lot of utility methods. </p>
<p class="definition">Definition at line <a class="el" href="Matrix4x4_8h_source.html#l00009">9</a> of file <a class="el" href="Matrix4x4_8h_source.html">Matrix4x4.h</a>.</p>
</div><h2 class="groupheader">Constructor &amp; Destructor Documentation</h2>
<a id="abba435897a7050d8c111d703c5bb3eb8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abba435897a7050d8c111d703c5bb3eb8">&#9670;&nbsp;</a></span>Vector3() <span class="overload">[1/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::<a class="el" href="classEule_1_1Vector3.html">Vector3</a> </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00020">20</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;: <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>{ 0 }, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>{ 0 }, <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>{ 0 } {}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab43c649b5f80f80660ce83a28697f1e9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab43c649b5f80f80660ce83a28697f1e9">&#9670;&nbsp;</a></span>Vector3() <span class="overload">[2/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::<a class="el" href="classEule_1_1Vector3.html">Vector3</a> </td>
<td>(</td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>_x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>_y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T&#160;</td>
<td class="paramname"><em>_z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00021">21</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;: <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>{ _x }, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>{ _y }, <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>{ _z } {}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac485bad4d2a077e0ab2a2bc68e223740"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac485bad4d2a077e0ab2a2bc68e223740">&#9670;&nbsp;</a></span>Vector3() <span class="overload">[3/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::<a class="el" href="classEule_1_1Vector3.html">Vector3</a> </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a id="a9c6dc41aad5e44f30baad3c3864148b8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9c6dc41aad5e44f30baad3c3864148b8">&#9670;&nbsp;</a></span>Vector3() <span class="overload">[4/4]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::<a class="el" href="classEule_1_1Vector3.html">Vector3</a> </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">default</span><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<h2 class="groupheader">Member Function Documentation</h2>
<a id="abd62a5f6b0f380491cf80d70ed2e5317"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abd62a5f6b0f380491cf80d70ed2e5317">&#9670;&nbsp;</a></span>CrossProduct()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::CrossProduct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will compute the cross product to another <a class="el" href="classEule_1_1Vector3.html" title="Representation of a 3d vector.">Vector3</a>. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00068">68</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>&#160;{</div>
<div class="line"><a name="l00070"></a><span class="lineno"> 70</span>&#160; <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;double&gt;</a> cp;</div>
<div class="line"><a name="l00071"></a><span class="lineno"> 71</span>&#160; cp.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = ((double)<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> * (<span class="keywordtype">double</span>)other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>) - ((<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> * (double)other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>);</div>
<div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160; cp.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = ((double)<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> * (<span class="keywordtype">double</span>)other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) - ((<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> * (double)other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160; cp.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = ((double)<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> * (<span class="keywordtype">double</span>)other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) - ((<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> * (double)other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>);</div>
<div class="line"><a name="l00074"></a><span class="lineno"> 74</span>&#160; </div>
<div class="line"><a name="l00075"></a><span class="lineno"> 75</span>&#160; <span class="keywordflow">return</span> cp;</div>
<div class="line"><a name="l00076"></a><span class="lineno"> 76</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a6cbc1516e045c0334f8bf8a1dcd6ca91"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6cbc1516e045c0334f8bf8a1dcd6ca91">&#9670;&nbsp;</a></span>DotProduct()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">double Vector3::DotProduct </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will compute the dot product to another <a class="el" href="classEule_1_1Vector3.html" title="Representation of a 3d vector.">Vector3</a>. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00048">48</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;{</div>
<div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160; <span class="keywordtype">int</span> iDot = (<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> * other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) + (<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> * other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) + (<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> * other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00051"></a><span class="lineno"> 51</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)iDot;</div>
<div class="line"><a name="l00052"></a><span class="lineno"> 52</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="add2f96155edb1159b53725932d951f1f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#add2f96155edb1159b53725932d951f1f">&#9670;&nbsp;</a></span>Lerp()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::Lerp </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will return a lerp result between this and another vector. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00330">330</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00331"></a><span class="lineno"> 331</span>&#160;{</div>
<div class="line"><a name="l00332"></a><span class="lineno"> 332</span>&#160; <a class="code" href="classEule_1_1Vector3.html">Vector3d</a> copy(this-&gt;<a class="code" href="classEule_1_1Vector3.html#a04560b5fa992b7fa455fc4d406928df8">ToDouble</a>());</div>
<div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160; copy.LerpSelf(other.<a class="code" href="classEule_1_1Vector3.html#a04560b5fa992b7fa455fc4d406928df8">ToDouble</a>(), t);</div>
<div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; </div>
<div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordflow">return</span> copy;</div>
<div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a8fb48e9a527d5e6fadb3b3102fa8f4c3"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8fb48e9a527d5e6fadb3b3102fa8f4c3">&#9670;&nbsp;</a></span>LerpSelf()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::LerpSelf </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>t</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will lerp itself towards other by t. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00311">311</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00312"></a><span class="lineno"> 312</span>&#160;{</div>
<div class="line"><a name="l00313"></a><span class="lineno"> 313</span>&#160; <span class="keyword">const</span> <span class="keywordtype">double</span> it = 1.0 - t; <span class="comment">// Inverse t</span></div>
<div class="line"><a name="l00314"></a><span class="lineno"> 314</span>&#160; </div>
<div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = (int)(it * (<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> + t * (double)other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>);</div>
<div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = (int)(it * (<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> + t * (double)other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>);</div>
<div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = (int)(it * (<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> + t * (double)other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; </div>
<div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a96e6e436600d1420250ef2868854988d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a96e6e436600d1420250ef2868854988d">&#9670;&nbsp;</a></span>Magnitude()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">double Vector3::Magnitude</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will compute the magnitude. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00095">95</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>&#160;{</div>
<div class="line"><a name="l00097"></a><span class="lineno"> 97</span>&#160; <span class="keywordflow">return</span> sqrt(<a class="code" href="classEule_1_1Vector3.html#ad2f078dd733634a321157d23979a4162">SqrMagnitude</a>());</div>
<div class="line"><a name="l00098"></a><span class="lineno"> 98</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4650f19df9b05d941d0fbc29ba59d980"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4650f19df9b05d941d0fbc29ba59d980">&#9670;&nbsp;</a></span>Normalize()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::Normalize</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will return the normalization of this vector. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00147">147</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;{</div>
<div class="line"><a name="l00149"></a><span class="lineno"> 149</span>&#160; <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;double&gt;</a> norm(<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00150"></a><span class="lineno"> 150</span>&#160; norm.NormalizeSelf();</div>
<div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160; </div>
<div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160; <span class="keywordflow">return</span> norm;</div>
<div class="line"><a name="l00153"></a><span class="lineno"> 153</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a69f80925d46f3630a2242b44ddb43a56"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69f80925d46f3630a2242b44ddb43a56">&#9670;&nbsp;</a></span>NormalizeSelf()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::NormalizeSelf </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Will normalize this vector. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00200">200</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00201"></a><span class="lineno"> 201</span>&#160;{</div>
<div class="line"><a name="l00202"></a><span class="lineno"> 202</span>&#160; std::cerr &lt;&lt; <span class="stringliteral">&quot;Stop normalizing int-vectors!!&quot;</span> &lt;&lt; std::endl;</div>
<div class="line"><a name="l00203"></a><span class="lineno"> 203</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = 0;</div>
<div class="line"><a name="l00204"></a><span class="lineno"> 204</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = 0;</div>
<div class="line"><a name="l00205"></a><span class="lineno"> 205</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = 0;</div>
<div class="line"><a name="l00206"></a><span class="lineno"> 206</span>&#160; </div>
<div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0bdcd7104775000964029ef94e8a3b6a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0bdcd7104775000964029ef94e8a3b6a">&#9670;&nbsp;</a></span>operator Vector2&lt; T &gt;()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">Vector3::operator <a class="el" href="classEule_1_1Vector2.html">Vector2</a>&lt; T &gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00873">873</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00874"></a><span class="lineno"> 874</span>&#160;{</div>
<div class="line"><a name="l00875"></a><span class="lineno"> 875</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector2.html">Vector2&lt;T&gt;</a>(<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>);</div>
<div class="line"><a name="l00876"></a><span class="lineno"> 876</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a67d1daadee40fbaada3b5c3b4b4b7e79"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a67d1daadee40fbaada3b5c3b4b4b7e79">&#9670;&nbsp;</a></span>operator Vector4&lt; T &gt;()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">Vector3::operator <a class="el" href="classEule_1_1Vector4.html">Vector4</a>&lt; T &gt;</td>
</tr>
</table>
</div><div class="memdoc">
<p>Conversion method. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00879">879</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00880"></a><span class="lineno"> 880</span>&#160;{</div>
<div class="line"><a name="l00881"></a><span class="lineno"> 881</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector4.html">Vector4&lt;T&gt;</a>(<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>, 0);</div>
<div class="line"><a name="l00882"></a><span class="lineno"> 882</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad71e5d9e7c46e63d226c180a2d8c0beb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad71e5d9e7c46e63d226c180a2d8c0beb">&#9670;&nbsp;</a></span>operator!=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool Vector3::operator!= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00864">864</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00865"></a><span class="lineno"> 865</span>&#160;{</div>
<div class="line"><a name="l00866"></a><span class="lineno"> 866</span>&#160; <span class="keywordflow">return</span> !<a class="code" href="classEule_1_1Vector3.html#a8619be9756e498c50158c5dac275262e">operator==</a>(other);</div>
<div class="line"><a name="l00867"></a><span class="lineno"> 867</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ab7148d41a5184ee4e2948cfdc5eb53f5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab7148d41a5184ee4e2948cfdc5eb53f5">&#9670;&nbsp;</a></span>operator*() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; int &gt; Vector3::operator* </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Matrix4x4.html">Matrix4x4</a> &amp;&#160;</td>
<td class="paramname"><em>mat</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00731">731</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00732"></a><span class="lineno"> 732</span>&#160;{</div>
<div class="line"><a name="l00733"></a><span class="lineno"> 733</span>&#160; <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;double&gt;</a> newVec;</div>
<div class="line"><a name="l00734"></a><span class="lineno"> 734</span>&#160; </div>
<div class="line"><a name="l00735"></a><span class="lineno"> 735</span>&#160; <span class="comment">// Rotation, Scaling</span></div>
<div class="line"><a name="l00736"></a><span class="lineno"> 736</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = ((mat[0][0] * <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) + (mat[1][0] * <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) + (mat[2][0] * <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>));</div>
<div class="line"><a name="l00737"></a><span class="lineno"> 737</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = ((mat[0][1] * <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) + (mat[1][1] * <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) + (mat[2][1] * <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>));</div>
<div class="line"><a name="l00738"></a><span class="lineno"> 738</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = ((mat[0][2] * <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) + (mat[1][2] * <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) + (mat[2][2] * <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>));</div>
<div class="line"><a name="l00739"></a><span class="lineno"> 739</span>&#160; </div>
<div class="line"><a name="l00740"></a><span class="lineno"> 740</span>&#160; <span class="comment">// Translation</span></div>
<div class="line"><a name="l00741"></a><span class="lineno"> 741</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> += mat[0][3];</div>
<div class="line"><a name="l00742"></a><span class="lineno"> 742</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> += mat[1][3];</div>
<div class="line"><a name="l00743"></a><span class="lineno"> 743</span>&#160; newVec.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> += mat[2][3];</div>
<div class="line"><a name="l00744"></a><span class="lineno"> 744</span>&#160; </div>
<div class="line"><a name="l00745"></a><span class="lineno"> 745</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;int&gt;</a>(</div>
<div class="line"><a name="l00746"></a><span class="lineno"> 746</span>&#160; (<span class="keywordtype">int</span>)newVec.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>,</div>
<div class="line"><a name="l00747"></a><span class="lineno"> 747</span>&#160; (<span class="keywordtype">int</span>)newVec.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>,</div>
<div class="line"><a name="l00748"></a><span class="lineno"> 748</span>&#160; (<span class="keywordtype">int</span>)newVec.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></div>
<div class="line"><a name="l00749"></a><span class="lineno"> 749</span>&#160; );</div>
<div class="line"><a name="l00750"></a><span class="lineno"> 750</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="afd6db19e66c398814f79bfd454682548"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afd6db19e66c398814f79bfd454682548">&#9670;&nbsp;</a></span>operator*() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; Vector3::operator* </td>
<td>(</td>
<td class="paramtype">const T&#160;</td>
<td class="paramname"><em>scale</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00541">541</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00542"></a><span class="lineno"> 542</span>&#160;{</div>
<div class="line"><a name="l00543"></a><span class="lineno"> 543</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;T&gt;</a>(</div>
<div class="line"><a name="l00544"></a><span class="lineno"> 544</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> * scale,</div>
<div class="line"><a name="l00545"></a><span class="lineno"> 545</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> * scale,</div>
<div class="line"><a name="l00546"></a><span class="lineno"> 546</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> * scale</div>
<div class="line"><a name="l00547"></a><span class="lineno"> 547</span>&#160; );</div>
<div class="line"><a name="l00548"></a><span class="lineno"> 548</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a2c3254704c4bf900277d2205f55f4157"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2c3254704c4bf900277d2205f55f4157">&#9670;&nbsp;</a></span>operator*=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator*= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Matrix4x4.html">Matrix4x4</a> &amp;&#160;</td>
<td class="paramname"><em>mat</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00836">836</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00837"></a><span class="lineno"> 837</span>&#160;{</div>
<div class="line"><a name="l00838"></a><span class="lineno"> 838</span>&#160; <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;double&gt;</a> buffer(<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00839"></a><span class="lineno"> 839</span>&#160; </div>
<div class="line"><a name="l00840"></a><span class="lineno"> 840</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = (int)((mat[0][0] * buffer.x) + (mat[0][1] * buffer.y) + (mat[0][2] * buffer.z));</div>
<div class="line"><a name="l00841"></a><span class="lineno"> 841</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = (int)((mat[1][0] * buffer.x) + (mat[1][1] * buffer.y) + (mat[1][2] * buffer.z));</div>
<div class="line"><a name="l00842"></a><span class="lineno"> 842</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = (int)((mat[2][0] * buffer.x) + (mat[2][1] * buffer.y) + (mat[2][2] * buffer.z));</div>
<div class="line"><a name="l00843"></a><span class="lineno"> 843</span>&#160; </div>
<div class="line"><a name="l00844"></a><span class="lineno"> 844</span>&#160; <span class="comment">// Translation</span></div>
<div class="line"><a name="l00845"></a><span class="lineno"> 845</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> += (int)mat[0][3];</div>
<div class="line"><a name="l00846"></a><span class="lineno"> 846</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> += (int)mat[1][3];</div>
<div class="line"><a name="l00847"></a><span class="lineno"> 847</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> += (int)mat[2][3];</div>
<div class="line"><a name="l00848"></a><span class="lineno"> 848</span>&#160; </div>
<div class="line"><a name="l00849"></a><span class="lineno"> 849</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00850"></a><span class="lineno"> 850</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a7a6e66693d2a1e5cf4dd7cca94ad49db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a6e66693d2a1e5cf4dd7cca94ad49db">&#9670;&nbsp;</a></span>operator*=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator*= </td>
<td>(</td>
<td class="paramtype">const T&#160;</td>
<td class="paramname"><em>scale</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00583">583</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00584"></a><span class="lineno"> 584</span>&#160;{</div>
<div class="line"><a name="l00585"></a><span class="lineno"> 585</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> *= scale;</div>
<div class="line"><a name="l00586"></a><span class="lineno"> 586</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> *= scale;</div>
<div class="line"><a name="l00587"></a><span class="lineno"> 587</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> *= scale;</div>
<div class="line"><a name="l00588"></a><span class="lineno"> 588</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00589"></a><span class="lineno"> 589</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ae094943bacbd043b41f9b34bdb51542e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae094943bacbd043b41f9b34bdb51542e">&#9670;&nbsp;</a></span>operator+()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; Vector3::operator+ </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00372">372</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00373"></a><span class="lineno"> 373</span>&#160;{</div>
<div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;T&gt;</a>(</div>
<div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> + other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>,</div>
<div class="line"><a name="l00376"></a><span class="lineno"> 376</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> + other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>,</div>
<div class="line"><a name="l00377"></a><span class="lineno"> 377</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> + other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></div>
<div class="line"><a name="l00378"></a><span class="lineno"> 378</span>&#160; );</div>
<div class="line"><a name="l00379"></a><span class="lineno"> 379</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ac6fe920a34552925aff185f335b13e14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac6fe920a34552925aff185f335b13e14">&#9670;&nbsp;</a></span>operator+=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator+= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00414">414</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00415"></a><span class="lineno"> 415</span>&#160;{</div>
<div class="line"><a name="l00416"></a><span class="lineno"> 416</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> += other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>;</div>
<div class="line"><a name="l00417"></a><span class="lineno"> 417</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> += other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>;</div>
<div class="line"><a name="l00418"></a><span class="lineno"> 418</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> += other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00419"></a><span class="lineno"> 419</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00420"></a><span class="lineno"> 420</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a11f2449516a8787f4cce227f12ae2f03"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a11f2449516a8787f4cce227f12ae2f03">&#9670;&nbsp;</a></span>operator-() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; Vector3::operator-</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00806">806</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00807"></a><span class="lineno"> 807</span>&#160;{</div>
<div class="line"><a name="l00808"></a><span class="lineno"> 808</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;T&gt;</a>(</div>
<div class="line"><a name="l00809"></a><span class="lineno"> 809</span>&#160; -<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>,</div>
<div class="line"><a name="l00810"></a><span class="lineno"> 810</span>&#160; -<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>,</div>
<div class="line"><a name="l00811"></a><span class="lineno"> 811</span>&#160; -<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></div>
<div class="line"><a name="l00812"></a><span class="lineno"> 812</span>&#160; );</div>
<div class="line"><a name="l00813"></a><span class="lineno"> 813</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a88273031482c057795e05ea25218ea4b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88273031482c057795e05ea25218ea4b">&#9670;&nbsp;</a></span>operator-() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; Vector3::operator- </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00456">456</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00457"></a><span class="lineno"> 457</span>&#160;{</div>
<div class="line"><a name="l00458"></a><span class="lineno"> 458</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;T&gt;</a>(</div>
<div class="line"><a name="l00459"></a><span class="lineno"> 459</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> - other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>,</div>
<div class="line"><a name="l00460"></a><span class="lineno"> 460</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> - other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>,</div>
<div class="line"><a name="l00461"></a><span class="lineno"> 461</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> - other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></div>
<div class="line"><a name="l00462"></a><span class="lineno"> 462</span>&#160; );</div>
<div class="line"><a name="l00463"></a><span class="lineno"> 463</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="af1207f3bf66aaf0fa781d43db40b8006"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af1207f3bf66aaf0fa781d43db40b8006">&#9670;&nbsp;</a></span>operator-=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator-= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00498">498</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00499"></a><span class="lineno"> 499</span>&#160;{</div>
<div class="line"><a name="l00500"></a><span class="lineno"> 500</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> -= other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>;</div>
<div class="line"><a name="l00501"></a><span class="lineno"> 501</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> -= other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>;</div>
<div class="line"><a name="l00502"></a><span class="lineno"> 502</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> -= other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00503"></a><span class="lineno"> 503</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00504"></a><span class="lineno"> 504</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="aa9bace50e1db42029d93fbd8a417fc70"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9bace50e1db42029d93fbd8a417fc70">&#9670;&nbsp;</a></span>operator/()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; Vector3::operator/ </td>
<td>(</td>
<td class="paramtype">const T&#160;</td>
<td class="paramname"><em>scale</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00626">626</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00627"></a><span class="lineno"> 627</span>&#160;{</div>
<div class="line"><a name="l00628"></a><span class="lineno"> 628</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;T&gt;</a>(</div>
<div class="line"><a name="l00629"></a><span class="lineno"> 629</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> / scale,</div>
<div class="line"><a name="l00630"></a><span class="lineno"> 630</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> / scale,</div>
<div class="line"><a name="l00631"></a><span class="lineno"> 631</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> / scale</div>
<div class="line"><a name="l00632"></a><span class="lineno"> 632</span>&#160; );</div>
<div class="line"><a name="l00633"></a><span class="lineno"> 633</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a69f00f05eda60630d48499067297e431"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69f00f05eda60630d48499067297e431">&#9670;&nbsp;</a></span>operator/=()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator/= </td>
<td>(</td>
<td class="paramtype">const T&#160;</td>
<td class="paramname"><em>scale</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00667">667</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00668"></a><span class="lineno"> 668</span>&#160;{</div>
<div class="line"><a name="l00669"></a><span class="lineno"> 669</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> /= scale;</div>
<div class="line"><a name="l00670"></a><span class="lineno"> 670</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> /= scale;</div>
<div class="line"><a name="l00671"></a><span class="lineno"> 671</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> /= scale;</div>
<div class="line"><a name="l00672"></a><span class="lineno"> 672</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00673"></a><span class="lineno"> 673</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9e725f7a3bf0fb822acf9418dc950ad5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9e725f7a3bf0fb822acf9418dc950ad5">&#9670;&nbsp;</a></span>operator=() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">void Vector3::operator= </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Conversion method. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00816">816</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00817"></a><span class="lineno"> 817</span>&#160;{</div>
<div class="line"><a name="l00818"></a><span class="lineno"> 818</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>;</div>
<div class="line"><a name="l00819"></a><span class="lineno"> 819</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>;</div>
<div class="line"><a name="l00820"></a><span class="lineno"> 820</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00821"></a><span class="lineno"> 821</span>&#160; </div>
<div class="line"><a name="l00822"></a><span class="lineno"> 822</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00823"></a><span class="lineno"> 823</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a68cd4f7804a47455d5a5af9cc6b66e38"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a68cd4f7804a47455d5a5af9cc6b66e38">&#9670;&nbsp;</a></span>operator=() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">void Vector3::operator= </td>
<td>(</td>
<td class="paramtype"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">noexcept</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00826">826</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00827"></a><span class="lineno"> 827</span>&#160;{</div>
<div class="line"><a name="l00828"></a><span class="lineno"> 828</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> = std::move(other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>);</div>
<div class="line"><a name="l00829"></a><span class="lineno"> 829</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> = std::move(other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>);</div>
<div class="line"><a name="l00830"></a><span class="lineno"> 830</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> = std::move(other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00831"></a><span class="lineno"> 831</span>&#160; </div>
<div class="line"><a name="l00832"></a><span class="lineno"> 832</span>&#160; <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l00833"></a><span class="lineno"> 833</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a8619be9756e498c50158c5dac275262e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8619be9756e498c50158c5dac275262e">&#9670;&nbsp;</a></span>operator==()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool Vector3::operator== </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00855">855</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00856"></a><span class="lineno"> 856</span>&#160;{</div>
<div class="line"><a name="l00857"></a><span class="lineno"> 857</span>&#160; <span class="keywordflow">return</span></div>
<div class="line"><a name="l00858"></a><span class="lineno"> 858</span>&#160; (<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> == other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>) &amp;&amp;</div>
<div class="line"><a name="l00859"></a><span class="lineno"> 859</span>&#160; (<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> == other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>) &amp;&amp;</div>
<div class="line"><a name="l00860"></a><span class="lineno"> 860</span>&#160; (<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> == other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00861"></a><span class="lineno"> 861</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a71f307ae6427a4d6df51647c9d76504b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71f307ae6427a4d6df51647c9d76504b">&#9670;&nbsp;</a></span>operator[]() <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">T &amp; Vector3::operator[] </td>
<td>(</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>idx</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00235">235</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00236"></a><span class="lineno"> 236</span>&#160;{</div>
<div class="line"><a name="l00237"></a><span class="lineno"> 237</span>&#160; <span class="keywordflow">switch</span> (idx)</div>
<div class="line"><a name="l00238"></a><span class="lineno"> 238</span>&#160; {</div>
<div class="line"><a name="l00239"></a><span class="lineno"> 239</span>&#160; <span class="keywordflow">case</span> 0:</div>
<div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>;</div>
<div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keywordflow">case</span> 1:</div>
<div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>;</div>
<div class="line"><a name="l00243"></a><span class="lineno"> 243</span>&#160; <span class="keywordflow">case</span> 2:</div>
<div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160; <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Array descriptor on Vector3&lt;T&gt; out of range!&quot;</span>);</div>
<div class="line"><a name="l00247"></a><span class="lineno"> 247</span>&#160; }</div>
<div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a4c028a7bab65693aff5d1a7c992326dc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c028a7bab65693aff5d1a7c992326dc">&#9670;&nbsp;</a></span>operator[]() <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">const T &amp; Vector3::operator[] </td>
<td>(</td>
<td class="paramtype">std::size_t&#160;</td>
<td class="paramname"><em>idx</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00251">251</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;{</div>
<div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160; <span class="keywordflow">switch</span> (idx)</div>
<div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160; {</div>
<div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160; <span class="keywordflow">case</span> 0:</div>
<div class="line"><a name="l00256"></a><span class="lineno"> 256</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>;</div>
<div class="line"><a name="l00257"></a><span class="lineno"> 257</span>&#160; <span class="keywordflow">case</span> 1:</div>
<div class="line"><a name="l00258"></a><span class="lineno"> 258</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>;</div>
<div class="line"><a name="l00259"></a><span class="lineno"> 259</span>&#160; <span class="keywordflow">case</span> 2:</div>
<div class="line"><a name="l00260"></a><span class="lineno"> 260</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160; <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160; <span class="keywordflow">throw</span> std::out_of_range(<span class="stringliteral">&quot;Array descriptor on Vector3&lt;T&gt; out of range!&quot;</span>);</div>
<div class="line"><a name="l00263"></a><span class="lineno"> 263</span>&#160; }</div>
<div class="line"><a name="l00264"></a><span class="lineno"> 264</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a9613bb7d4981c921b8310d5eedf59b07"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9613bb7d4981c921b8310d5eedf59b07">&#9670;&nbsp;</a></span>Similar()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">bool Vector3::Similar </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>other</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">double&#160;</td>
<td class="paramname"><em>epsilon</em> = <code>0.00001</code>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will compare if two vectors are similar to a certain epsilon value. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00213">213</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00214"></a><span class="lineno"> 214</span>&#160;{</div>
<div class="line"><a name="l00215"></a><span class="lineno"> 215</span>&#160; <span class="keywordflow">return</span></div>
<div class="line"><a name="l00216"></a><span class="lineno"> 216</span>&#160; (::<a class="code" href="classEule_1_1Math.html#ac928b1e9cde5ac60f5fdc1ba466305ff">Math::Similar</a>(<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, other.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, epsilon)) &amp;&amp;</div>
<div class="line"><a name="l00217"></a><span class="lineno"> 217</span>&#160; (::Math::Similar(<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, other.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, epsilon)) &amp;&amp;</div>
<div class="line"><a name="l00218"></a><span class="lineno"> 218</span>&#160; (::<a class="code" href="classEule_1_1Math.html#ac928b1e9cde5ac60f5fdc1ba466305ff">Math::Similar</a>(<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>, other.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>, epsilon))</div>
<div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160; ;</div>
<div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="ad2f078dd733634a321157d23979a4162"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2f078dd733634a321157d23979a4162">&#9670;&nbsp;</a></span>SqrMagnitude()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">double Vector3::SqrMagnitude </td>
<td>(</td>
<td class="paramname"></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will compute the square magnitude. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00088">88</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;{</div>
<div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; <span class="keywordtype">int</span> iSqrMag = <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>*<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> + <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>*<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> + <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>*<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>;</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)iSqrMag;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a04560b5fa992b7fa455fc4d406928df8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a04560b5fa992b7fa455fc4d406928df8">&#9670;&nbsp;</a></span>ToDouble()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::ToDouble</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will convert this vector to a Vector3d. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00229">229</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;{</div>
<div class="line"><a name="l00231"></a><span class="lineno"> 231</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;double&gt;</a>((<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, (<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, (<span class="keywordtype">double</span>)<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00232"></a><span class="lineno"> 232</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a0510707e23eb81c4a799dffc7b0ce127"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0510707e23eb81c4a799dffc7b0ce127">&#9670;&nbsp;</a></span>ToInt()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; int &gt; Vector3::ToInt</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will convert this vector to a Vector3i. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00223">223</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;{</div>
<div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;int&gt;</a>((<span class="keywordtype">int</span>)<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>, (<span class="keywordtype">int</span>)<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>, (<span class="keywordtype">int</span>)<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a>);</div>
<div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="afbfdd011a51ae697bdf0d297f2f6aa95"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afbfdd011a51ae697bdf0d297f2f6aa95">&#9670;&nbsp;</a></span>VectorScale()</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname"><a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; int &gt; Vector3::VectorScale </td>
<td>(</td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>scalar</em></td><td>)</td>
<td> const</td>
</tr>
</table>
</div><div class="memdoc">
<p>Will scale self.n by scalar.n. </p>
<p class="definition">Definition at line <a class="el" href="Vector3_8cpp_source.html#l00135">135</a> of file <a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a>.</p>
<div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>&#160;{</div>
<div class="line"><a name="l00137"></a><span class="lineno"> 137</span>&#160; <span class="keywordflow">return</span> <a class="code" href="classEule_1_1Vector3.html">Vector3&lt;int&gt;</a>(</div>
<div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a> * scalar.<a class="code" href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">x</a>,</div>
<div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a> * scalar.<a class="code" href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">y</a>,</div>
<div class="line"><a name="l00140"></a><span class="lineno"> 140</span>&#160; <a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a> * scalar.<a class="code" href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">z</a></div>
<div class="line"><a name="l00141"></a><span class="lineno"> 141</span>&#160; );</div>
<div class="line"><a name="l00142"></a><span class="lineno"> 142</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Friends And Related Function Documentation</h2>
<a id="a5705993a4489fc62d73b85f3654261cf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5705993a4489fc62d73b85f3654261cf">&#9670;&nbsp;</a></span>operator&lt;&lt; <span class="overload">[1/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::ostream&amp; operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::ostream &amp;&#160;</td>
<td class="paramname"><em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00085">85</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00086"></a><span class="lineno"> 86</span>&#160; {</div>
<div class="line"><a name="l00087"></a><span class="lineno"> 87</span>&#160; <span class="keywordflow">return</span> os &lt;&lt; <span class="stringliteral">&quot;[x: &quot;</span> &lt;&lt; v.x &lt;&lt; <span class="stringliteral">&quot; y: &quot;</span> &lt;&lt; v.y &lt;&lt; <span class="stringliteral">&quot; z: &quot;</span> &lt;&lt; v.z &lt;&lt; <span class="stringliteral">&quot;]&quot;</span>;</div>
<div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160; }</div>
</div><!-- fragment -->
</div>
</div>
<a id="a062adbc281326979ec3f5f71052d0deb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a062adbc281326979ec3f5f71052d0deb">&#9670;&nbsp;</a></span>operator&lt;&lt; <span class="overload">[2/2]</span></h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">std::wostream&amp; operator&lt;&lt; </td>
<td>(</td>
<td class="paramtype">std::wostream &amp;&#160;</td>
<td class="paramname"><em>os</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; T &gt; &amp;&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">friend</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00089">89</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
<div class="fragment"><div class="line"><a name="l00090"></a><span class="lineno"> 90</span>&#160; {</div>
<div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160; <span class="keywordflow">return</span> os &lt;&lt; L<span class="stringliteral">&quot;[x: &quot;</span> &lt;&lt; v.x &lt;&lt; L<span class="stringliteral">&quot; y: &quot;</span> &lt;&lt; v.y &lt;&lt; L<span class="stringliteral">&quot; z: &quot;</span> &lt;&lt; v.z &lt;&lt; L<span class="stringliteral">&quot;]&quot;</span>;</div>
<div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160; }</div>
</div><!-- fragment -->
</div>
</div>
<h2 class="groupheader">Member Data Documentation</h2>
<a id="a34083239eb29eaf4614d09d4d7014b06"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a34083239eb29eaf4614d09d4d7014b06">&#9670;&nbsp;</a></span>backward</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::backward</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00104">104</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="ac44e82051be457c78f6428859482f848"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac44e82051be457c78f6428859482f848">&#9670;&nbsp;</a></span>down</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::down</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00100">100</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a791d893f68f2aee85287ab3ab7612ff0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a791d893f68f2aee85287ab3ab7612ff0">&#9670;&nbsp;</a></span>forward</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::forward</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00103">103</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a37949a2f74ceb05ea1797be34c42989a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37949a2f74ceb05ea1797be34c42989a">&#9670;&nbsp;</a></span>left</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::left</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00102">102</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a46a389aa258dc615650ffd7e98e3e482"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46a389aa258dc615650ffd7e98e3e482">&#9670;&nbsp;</a></span>one</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::one</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00105">105</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a1febd6152b8964147229242630b8c8f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1febd6152b8964147229242630b8c8f0">&#9670;&nbsp;</a></span>right</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::right</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00101">101</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a7508f8b060773b00cd40df94d628d7b6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7508f8b060773b00cd40df94d628d7b6">&#9670;&nbsp;</a></span>up</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::up</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00099">99</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a3d7770a583354b1dfc2f6af1092adc1b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3d7770a583354b1dfc2f6af1092adc1b">&#9670;&nbsp;</a></span>x</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">T <a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::x</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00094">94</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a716e038c7b599bc5c741dfc0a3c42146"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a716e038c7b599bc5c741dfc0a3c42146">&#9670;&nbsp;</a></span>y</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">T <a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::y</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00095">95</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a754b1a46c44a0fde99e670e174dba674"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a754b1a46c44a0fde99e670e174dba674">&#9670;&nbsp;</a></span>z</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="memname">
<tr>
<td class="memname">T <a class="el" href="classEule_1_1Vector3.html">Eule::Vector3</a>&lt; T &gt;::z</td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00096">96</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<a id="a1f0b4bb9f5533e3a134310d702bbfb33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1f0b4bb9f5533e3a134310d702bbfb33">&#9670;&nbsp;</a></span>zero</h2>
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename T &gt; </div>
<table class="mlabels">
<tr>
<td class="mlabels-left">
<table class="memname">
<tr>
<td class="memname">const <a class="el" href="classEule_1_1Vector3.html">Vector3</a>&lt; double &gt; Vector3::zero</td>
</tr>
</table>
</td>
<td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span> </td>
</tr>
</table>
</div><div class="memdoc">
<p class="definition">Definition at line <a class="el" href="Vector3_8h_source.html#l00106">106</a> of file <a class="el" href="Vector3_8h_source.html">Vector3.h</a>.</p>
</div>
</div>
<hr/>The documentation for this class was generated from the following files:<ul>
<li>Eule/<a class="el" href="Matrix4x4_8h_source.html">Matrix4x4.h</a></li>
<li>Eule/<a class="el" href="Vector3_8h_source.html">Vector3.h</a></li>
<li>Eule/<a class="el" href="Vector3_8cpp_source.html">Vector3.cpp</a></li>
</ul>
</div><!-- contents -->
<div class="ttc" id="aclassEule_1_1Vector3_html"><div class="ttname"><a href="classEule_1_1Vector3.html">Eule::Vector3&lt; double &gt;</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_a04560b5fa992b7fa455fc4d406928df8"><div class="ttname"><a href="classEule_1_1Vector3.html#a04560b5fa992b7fa455fc4d406928df8">Eule::Vector3::ToDouble</a></div><div class="ttdeci">Vector3&lt; double &gt; ToDouble() const</div><div class="ttdoc">Will convert this vector to a Vector3d.</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8cpp_source.html#l00229">Vector3.cpp:229</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_a8619be9756e498c50158c5dac275262e"><div class="ttname"><a href="classEule_1_1Vector3.html#a8619be9756e498c50158c5dac275262e">Eule::Vector3::operator==</a></div><div class="ttdeci">bool operator==(const Vector3&lt; T &gt; &amp;other) const</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8cpp_source.html#l00855">Vector3.cpp:855</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_a754b1a46c44a0fde99e670e174dba674"><div class="ttname"><a href="classEule_1_1Vector3.html#a754b1a46c44a0fde99e670e174dba674">Eule::Vector3::z</a></div><div class="ttdeci">T z</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8h_source.html#l00096">Vector3.h:96</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_a3d7770a583354b1dfc2f6af1092adc1b"><div class="ttname"><a href="classEule_1_1Vector3.html#a3d7770a583354b1dfc2f6af1092adc1b">Eule::Vector3::x</a></div><div class="ttdeci">T x</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8h_source.html#l00094">Vector3.h:94</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector2_html"><div class="ttname"><a href="classEule_1_1Vector2.html">Eule::Vector2</a></div><div class="ttdoc">Representation of a 2d vector.</div><div class="ttdef"><b>Definition:</b> <a href="Vector2_8h_source.html#l00014">Vector2.h:14</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_ad2f078dd733634a321157d23979a4162"><div class="ttname"><a href="classEule_1_1Vector3.html#ad2f078dd733634a321157d23979a4162">Eule::Vector3::SqrMagnitude</a></div><div class="ttdeci">double SqrMagnitude() const</div><div class="ttdoc">Will compute the square magnitude.</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8cpp_source.html#l00088">Vector3.cpp:88</a></div></div>
<div class="ttc" id="aclassEule_1_1Math_html_ac928b1e9cde5ac60f5fdc1ba466305ff"><div class="ttname"><a href="classEule_1_1Math.html#ac928b1e9cde5ac60f5fdc1ba466305ff">Eule::Math::Similar</a></div><div class="ttdeci">static constexpr bool Similar(const double a, const double b, const double epsilon=0.00001)</div><div class="ttdoc">Compares two double values with a given accuracy.</div></div>
<div class="ttc" id="aclassEule_1_1Vector3_html_a716e038c7b599bc5c741dfc0a3c42146"><div class="ttname"><a href="classEule_1_1Vector3.html#a716e038c7b599bc5c741dfc0a3c42146">Eule::Vector3::y</a></div><div class="ttdeci">T y</div><div class="ttdef"><b>Definition:</b> <a href="Vector3_8h_source.html#l00095">Vector3.h:95</a></div></div>
<div class="ttc" id="aclassEule_1_1Vector4_html"><div class="ttname"><a href="classEule_1_1Vector4.html">Eule::Vector4</a></div><div class="ttdoc">Representation of a 4d vector.</div><div class="ttdef"><b>Definition:</b> <a href="Vector2_8h_source.html#l00008">Vector2.h:8</a></div></div>
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
2021-11-15 11:46:15 +01:00
Generated on Mon Nov 15 2021 11:45:52 for Leonetienne/Eule by &#160;<a href="http://www.doxygen.org/index.html">
2021-11-15 11:35:45 +01:00
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.17
</small></address>
</body>
</html>