glm/doc/api-0.9.2/a00286.html

767 lines
36 KiB
HTML
Raw Normal View History

2011-10-24 14:24:48 +00:00
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>GLM_GTX_quaternion: Extented quaternion types and functions</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<!-- Generated by Doxygen 1.7.4 -->
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
<tbody>
<tr style="height: 56px;">
<td id="projectlogo"><img alt="Logo" src="logo-mini.png"/></td>
</tr>
</tbody>
</table>
</div>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li><a href="modules.html"><span>Modules</span></a></li>
<li><a href="namespaces.html"><span>Namespaces</span></a></li>
<li><a href="annotated.html"><span>Classes</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
</ul>
</div>
</div>
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">GLM_GTX_quaternion: Extented quaternion types and functions</div> </div>
<div class="ingroups"><a class="el" href="a00248.html">GTX Extensions (Experimental)</a></div></div>
<div class="contents">
<p>Extented quaternion types and functions.
<a href="#details">More...</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga6a3387a7d60728f60d86546b2f4d4d30">angle</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga4412b01c376d9cfc9cc06b2d511d0f16">angleAxis</a> (valType const &amp;angle, valType const &amp;x, valType const &amp;y, valType const &amp;z)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#gaac770715e5e3dc93f48c6634b59efd43">angleAxis</a> (valType const &amp;angle, detail::tvec3&lt; valType &gt; const &amp;axis)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga6dd1904e2a6cc8e54bd324994094a6f9">axis</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga2a222a07e879ab25de36d6b5a8f6610d">cross</a> (detail::tquat&lt; valType &gt; const &amp;q, detail::tvec3&lt; valType &gt; const &amp;v)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga07cefaf434b895aa6a1841837f0c106d">cross</a> (detail::tvec3&lt; valType &gt; const &amp;v, detail::tquat&lt; valType &gt; const &amp;q)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga39be27be43d9f80ce5bfc5e1adf21412">eulerAngles</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#gaed2302270ec468d26de745516ccb5d4b">exp</a> (detail::tquat&lt; valType &gt; const &amp;q, valType const &amp;exponent)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga23eb8e1aeaf751f7cc46fbaa291e223d">extractRealComponent</a> (detail::tquat&lt; valType &gt; const &amp;q)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga65d5734ce29049d334992f6a59e27e58">fastMix</a> (detail::tquat&lt; T &gt; const &amp;x, detail::tquat&lt; T &gt; const &amp;y, T const &amp;a)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#gaa15c443e97ac7476d04627d868995891">intermediate</a> (detail::tquat&lt; valType &gt; const &amp;prev, detail::tquat&lt; valType &gt; const &amp;curr, detail::tquat&lt; valType &gt; const &amp;next)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga11af1897310ec8a09210fb7b4deb0027">log</a> (detail::tquat&lt; valType &gt; const &amp;q)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#gafad23e37f1723bbbbd7f9498cd729126">pitch</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga42873121534327c9e5238f3ca3d6cd03">pow</a> (detail::tquat&lt; valType &gt; const &amp;x, valType const &amp;y)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga60a4f955b2836d85f3d21ded84879926">roll</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga7f163c787898b76dc1d91eb48523ce87">rotate</a> (detail::tquat&lt; valType &gt; const &amp;q, detail::tvec3&lt; valType &gt; const &amp;v)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec4&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga92cb29907ffd24771d31f06c94e6d166">rotate</a> (detail::tquat&lt; valType &gt; const &amp;q, detail::tvec4&lt; valType &gt; const &amp;v)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga22566896a998311431a0612e1c222002">shortMix</a> (detail::tquat&lt; T &gt; const &amp;x, detail::tquat&lt; T &gt; const &amp;y, T const &amp;a)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga203b736245b7519eb151ac46e0bf7f21">squad</a> (detail::tquat&lt; valType &gt; const &amp;q1, detail::tquat&lt; valType &gt; const &amp;q2, detail::tquat&lt; valType &gt; const &amp;s1, detail::tquat&lt; valType &gt; const &amp;s2, valType const &amp;h)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga61ec971322157330116a3aefe5bae609">toMat3</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x4&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga80622343bd7ccf43c9b4cb677ba3ce38">toMat4</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga2d9d1916258d13bd5f0373341400f18c">toQuat</a> (detail::tmat4x4&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga991e534718ab690ff21e201f27bfd43b">toQuat</a> (detail::tmat3x3&lt; valType &gt; const &amp;x)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00286.html#ga4795f1cc522d82d672f7be9a405583c4">yaw</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Extented quaternion types and functions. </p>
<p>&lt;<a class="el" href="a00095_source.html">glm/gtx/quaternion.hpp</a>&gt; need to be included to use these functionalities. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga6a3387a7d60728f60d86546b2f4d4d30"></a><!-- doxytag: member="glm::gtx::quaternion::angle" ref="ga6a3387a7d60728f60d86546b2f4d4d30" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::gtx::quaternion::angle </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns the quaternion rotation angle. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga4412b01c376d9cfc9cc06b2d511d0f16"></a><!-- doxytag: member="glm::gtx::quaternion::angleAxis" ref="ga4412b01c376d9cfc9cc06b2d511d0f16" args="(valType const &amp;angle, valType const &amp;x, valType const &amp;y, valType const &amp;z)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::angleAxis </td>
<td>(</td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>angle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>z</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Build a quaternion from an angle and a normalized axis. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="gaac770715e5e3dc93f48c6634b59efd43"></a><!-- doxytag: member="glm::gtx::quaternion::angleAxis" ref="gaac770715e5e3dc93f48c6634b59efd43" args="(valType const &amp;angle, detail::tvec3&lt; valType &gt; const &amp;axis)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::angleAxis </td>
<td>(</td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>angle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>axis</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Build a quaternion from an angle and a normalized axis. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga6dd1904e2a6cc8e54bd324994094a6f9"></a><!-- doxytag: member="glm::gtx::quaternion::axis" ref="ga6dd1904e2a6cc8e54bd324994094a6f9" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;valType&gt; glm::gtx::quaternion::axis </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns the q rotation axis. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga2a222a07e879ab25de36d6b5a8f6610d"></a><!-- doxytag: member="glm::gtx::quaternion::cross" ref="ga2a222a07e879ab25de36d6b5a8f6610d" args="(detail::tquat&lt; valType &gt; const &amp;q, detail::tvec3&lt; valType &gt; const &amp;v)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;valType&gt; glm::gtx::quaternion::cross </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Compute a cross product between a quaternion and a vector. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga07cefaf434b895aa6a1841837f0c106d"></a><!-- doxytag: member="glm::gtx::quaternion::cross" ref="ga07cefaf434b895aa6a1841837f0c106d" args="(detail::tvec3&lt; valType &gt; const &amp;v, detail::tquat&lt; valType &gt; const &amp;q)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;valType&gt; glm::gtx::quaternion::cross </td>
<td>(</td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Compute a cross product between a vector and a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga39be27be43d9f80ce5bfc5e1adf21412"></a><!-- doxytag: member="glm::gtx::quaternion::eulerAngles" ref="ga39be27be43d9f80ce5bfc5e1adf21412" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;valType&gt; glm::gtx::quaternion::eulerAngles </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns euler angles, yitch as x, yaw as y, roll as z. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="gaed2302270ec468d26de745516ccb5d4b"></a><!-- doxytag: member="glm::gtx::quaternion::exp" ref="gaed2302270ec468d26de745516ccb5d4b" args="(detail::tquat&lt; valType &gt; const &amp;q, valType const &amp;exponent)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::exp </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>exponent</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns a exp of a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga23eb8e1aeaf751f7cc46fbaa291e223d"></a><!-- doxytag: member="glm::gtx::quaternion::extractRealComponent" ref="ga23eb8e1aeaf751f7cc46fbaa291e223d" args="(detail::tquat&lt; valType &gt; const &amp;q)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::gtx::quaternion::extractRealComponent </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Extract the real component of a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga65d5734ce29049d334992f6a59e27e58"></a><!-- doxytag: member="glm::gtx::quaternion::fastMix" ref="ga65d5734ce29049d334992f6a59e27e58" args="(detail::tquat&lt; T &gt; const &amp;x, detail::tquat&lt; T &gt; const &amp;y, T const &amp;a)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::gtx::quaternion::fastMix </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Quaternion normalized linear interpolation. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="gaa15c443e97ac7476d04627d868995891"></a><!-- doxytag: member="glm::gtx::quaternion::intermediate" ref="gaa15c443e97ac7476d04627d868995891" args="(detail::tquat&lt; valType &gt; const &amp;prev, detail::tquat&lt; valType &gt; const &amp;curr, detail::tquat&lt; valType &gt; const &amp;next)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::intermediate </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>prev</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>curr</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>next</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns an intermediate control point for squad interpolation. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga11af1897310ec8a09210fb7b4deb0027"></a><!-- doxytag: member="glm::gtx::quaternion::log" ref="ga11af1897310ec8a09210fb7b4deb0027" args="(detail::tquat&lt; valType &gt; const &amp;q)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::log </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns a log of a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="gafad23e37f1723bbbbd7f9498cd729126"></a><!-- doxytag: member="glm::gtx::quaternion::pitch" ref="gafad23e37f1723bbbbd7f9498cd729126" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::gtx::quaternion::pitch </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns pitch value of euler angles in degrees. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga42873121534327c9e5238f3ca3d6cd03"></a><!-- doxytag: member="glm::gtx::quaternion::pow" ref="ga42873121534327c9e5238f3ca3d6cd03" args="(detail::tquat&lt; valType &gt; const &amp;x, valType const &amp;y)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::pow </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>y</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns x raised to the y power. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga60a4f955b2836d85f3d21ded84879926"></a><!-- doxytag: member="glm::gtx::quaternion::roll" ref="ga60a4f955b2836d85f3d21ded84879926" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::gtx::quaternion::roll </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns roll value of euler angles in degrees. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga7f163c787898b76dc1d91eb48523ce87"></a><!-- doxytag: member="glm::gtx::quaternion::rotate" ref="ga7f163c787898b76dc1d91eb48523ce87" args="(detail::tquat&lt; valType &gt; const &amp;q, detail::tvec3&lt; valType &gt; const &amp;v)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;valType&gt; glm::gtx::quaternion::rotate </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tvec3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns quarternion square root. </p>
<p>From GLM_GTX_quaternion extension. Rotates a 3 components vector by a quaternion. From GLM_GTX_transform extension. </p>
</div>
</div>
<a class="anchor" id="ga92cb29907ffd24771d31f06c94e6d166"></a><!-- doxytag: member="glm::gtx::quaternion::rotate" ref="ga92cb29907ffd24771d31f06c94e6d166" args="(detail::tquat&lt; valType &gt; const &amp;q, detail::tvec4&lt; valType &gt; const &amp;v)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec4&lt;valType&gt; glm::gtx::quaternion::rotate </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tvec4&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>v</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Rotates a 4 components vector by a quaternion. </p>
<p>From GLM_GTX_transform extension. </p>
</div>
</div>
<a class="anchor" id="ga22566896a998311431a0612e1c222002"></a><!-- doxytag: member="glm::gtx::quaternion::shortMix" ref="ga22566896a998311431a0612e1c222002" args="(detail::tquat&lt; T &gt; const &amp;x, detail::tquat&lt; T &gt; const &amp;y, T const &amp;a)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::gtx::quaternion::shortMix </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>y</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Quaternion interpolation using the rotation short path. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga203b736245b7519eb151ac46e0bf7f21"></a><!-- doxytag: member="glm::gtx::quaternion::squad" ref="ga203b736245b7519eb151ac46e0bf7f21" args="(detail::tquat&lt; valType &gt; const &amp;q1, detail::tquat&lt; valType &gt; const &amp;q2, detail::tquat&lt; valType &gt; const &amp;s1, detail::tquat&lt; valType &gt; const &amp;s2, valType const &amp;h)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::squad </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>q2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>s1</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>s2</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">valType const &amp;&#160;</td>
<td class="paramname"><em>h</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Compute a point on a path according squad equation. </p>
<p>q1 and q2 are control points; s1 and s2 are intermediate control points. From GLM_GTX_quaternion extension. </p>
</div>
</div>
<a class="anchor" id="ga61ec971322157330116a3aefe5bae609"></a><!-- doxytag: member="glm::gtx::quaternion::toMat3" ref="ga61ec971322157330116a3aefe5bae609" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x3&lt;valType&gt; glm::gtx::quaternion::toMat3 </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Converts a quaternion to a 3 * 3 matrix. </p>
<p>From GLM_GTX_quaternion extension. </p>
<p>Definition at line <a class="el" href="a00095_source.html#l00171">171</a> of file <a class="el" href="a00095_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00245.html#ga38702707009c743e9f304aadc25aeeeb">glm::gtc::quaternion::mat3_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga80622343bd7ccf43c9b4cb677ba3ce38"></a><!-- doxytag: member="glm::gtx::quaternion::toMat4" ref="ga80622343bd7ccf43c9b4cb677ba3ce38" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x4&lt;valType&gt; glm::gtx::quaternion::toMat4 </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Converts a quaternion to a 4 * 4 matrix. </p>
<p>From GLM_GTX_quaternion extension. </p>
<p>Definition at line <a class="el" href="a00095_source.html#l00177">177</a> of file <a class="el" href="a00095_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00245.html#gae2d14d52f9fef3da00cf867f9e2e3dfa">glm::gtc::quaternion::mat4_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga2d9d1916258d13bd5f0373341400f18c"></a><!-- doxytag: member="glm::gtx::quaternion::toQuat" ref="ga2d9d1916258d13bd5f0373341400f18c" args="(detail::tmat4x4&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::toQuat </td>
<td>(</td>
<td class="paramtype">detail::tmat4x4&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Converts a 4 * 4 matrix to a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
<p>Definition at line <a class="el" href="a00095_source.html#l00189">189</a> of file <a class="el" href="a00095_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00245.html#ga9a8fa3c0a776ce21fde307d94f5a5a52">glm::gtc::quaternion::quat_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga991e534718ab690ff21e201f27bfd43b"></a><!-- doxytag: member="glm::gtx::quaternion::toQuat" ref="ga991e534718ab690ff21e201f27bfd43b" args="(detail::tmat3x3&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;valType&gt; glm::gtx::quaternion::toQuat </td>
<td>(</td>
<td class="paramtype">detail::tmat3x3&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Converts a 3 * 3 matrix to a quaternion. </p>
<p>From GLM_GTX_quaternion extension. </p>
<p>Definition at line <a class="el" href="a00095_source.html#l00183">183</a> of file <a class="el" href="a00095_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00245.html#ga9a8fa3c0a776ce21fde307d94f5a5a52">glm::gtc::quaternion::quat_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga4795f1cc522d82d672f7be9a405583c4"></a><!-- doxytag: member="glm::gtx::quaternion::yaw" ref="ga4795f1cc522d82d672f7be9a405583c4" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::gtx::quaternion::yaw </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; valType &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
<p>Returns yaw value of euler angles in degrees. </p>
<p>From GLM_GTX_quaternion extension. </p>
</div>
</div>
</div>
<hr class="footer"/><address class="footer"><small>Generated by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>