glm/doc/api-0.9.3/a00210.html
2011-11-12 23:26:02 +00:00

767 lines
35 KiB
HTML

<!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.3 -->
<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="pages.html"><span>Related&#160;Pages</span></a></li>
<li><a href="modules.html"><span>Modules</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">
<h1>GLM_GTX_quaternion: Extented quaternion types and functions</h1> </div>
<div class="ingroups"><a class="el" href="a00152.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="a00210.html#ga9eb5d8efb18df5d24452ac826bb4af70">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="a00210.html#gab01ed969dd028f175f8602f934421abb">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="a00210.html#gaf2621708497c017929ff15b4b014243e">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="a00210.html#gacc113f4bc268d23febee9cc2424a7382">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="a00210.html#ga7dbc42a93b443c4c096ac7b5f07905ca">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="a00210.html#ga02184ac80629a2a7cc67298da9747bd6">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="a00210.html#gaca5e7ee5447c6b1826a96081cf31c1e2">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="a00210.html#ga6b6f7e12fba8c1e967adf7cc00ab6b02">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="a00210.html#ga914da727f0e054a6fe30402b5ab420eb">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="a00210.html#ga49c4032ac5c5b4466924e86cabb4f4a9">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="a00210.html#ga674192b1c88037a8a6af19b055db1d51">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="a00210.html#ga03f76f06bb85a58046d03dcde5a3fbf1">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="a00210.html#gaf8e9affef91344a596ffdafe8e32b2c6">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="a00210.html#gad75fdbf081aebd36786e50989857a4fa">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="a00210.html#gaf531a764432a5252e2656583fd45ad93">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="a00210.html#ga57be7b7bcc7c487bf67b8e24f4b37229">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="a00210.html#ga44f5a3a340865a5dc69a1dea7f615530">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="a00210.html#ga3ee0b8dd0f79849535cf0594c63fe6a9">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="a00210.html#gace2f0729df1d4fc04f60a1cd11b09dbf">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="a00210.html#ga3f8121dd134844e5651532d5af283c62">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="a00210.html#ga718c512e7b5490618c2b5be158f5eee5">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="a00210.html#ga57230ebe95889058579e0c2b1be93dbe">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="a00210.html#gac4651509e9eaa149d196fd641499ca99">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="a00210.html#gaa38e83e059f81c0df5b097f73ea1c5d1">yaw</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
</table>
<hr/><a name="_details"></a><h2>Detailed Description</h2>
<p>Extented quaternion types and functions. </p>
<p>&lt;<a class="el" href="a00092.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/gtx/quaternion.hpp</a>&gt; need to be included to use these functionalities. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="ga9eb5d8efb18df5d24452ac826bb4af70"></a><!-- doxytag: member="glm::angle" ref="ga9eb5d8efb18df5d24452ac826bb4af70" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::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="gab01ed969dd028f175f8602f934421abb"></a><!-- doxytag: member="glm::angleAxis" ref="gab01ed969dd028f175f8602f934421abb" 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::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="gaf2621708497c017929ff15b4b014243e"></a><!-- doxytag: member="glm::angleAxis" ref="gaf2621708497c017929ff15b4b014243e" 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::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="gacc113f4bc268d23febee9cc2424a7382"></a><!-- doxytag: member="glm::axis" ref="gacc113f4bc268d23febee9cc2424a7382" 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::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="ga7dbc42a93b443c4c096ac7b5f07905ca"></a><!-- doxytag: member="glm::cross" ref="ga7dbc42a93b443c4c096ac7b5f07905ca" 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::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="ga02184ac80629a2a7cc67298da9747bd6"></a><!-- doxytag: member="glm::cross" ref="ga02184ac80629a2a7cc67298da9747bd6" 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::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="gaca5e7ee5447c6b1826a96081cf31c1e2"></a><!-- doxytag: member="glm::eulerAngles" ref="gaca5e7ee5447c6b1826a96081cf31c1e2" 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::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="ga6b6f7e12fba8c1e967adf7cc00ab6b02"></a><!-- doxytag: member="glm::exp" ref="ga6b6f7e12fba8c1e967adf7cc00ab6b02" 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::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="ga914da727f0e054a6fe30402b5ab420eb"></a><!-- doxytag: member="glm::extractRealComponent" ref="ga914da727f0e054a6fe30402b5ab420eb" args="(detail::tquat&lt; valType &gt; const &amp;q)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::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="ga49c4032ac5c5b4466924e86cabb4f4a9"></a><!-- doxytag: member="glm::fastMix" ref="ga49c4032ac5c5b4466924e86cabb4f4a9" 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::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="ga674192b1c88037a8a6af19b055db1d51"></a><!-- doxytag: member="glm::intermediate" ref="ga674192b1c88037a8a6af19b055db1d51" 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::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="ga03f76f06bb85a58046d03dcde5a3fbf1"></a><!-- doxytag: member="glm::log" ref="ga03f76f06bb85a58046d03dcde5a3fbf1" 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::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="gaf8e9affef91344a596ffdafe8e32b2c6"></a><!-- doxytag: member="glm::pitch" ref="gaf8e9affef91344a596ffdafe8e32b2c6" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::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="gad75fdbf081aebd36786e50989857a4fa"></a><!-- doxytag: member="glm::pow" ref="gad75fdbf081aebd36786e50989857a4fa" 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::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="gaf531a764432a5252e2656583fd45ad93"></a><!-- doxytag: member="glm::roll" ref="gaf531a764432a5252e2656583fd45ad93" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::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="ga57be7b7bcc7c487bf67b8e24f4b37229"></a><!-- doxytag: member="glm::rotate" ref="ga57be7b7bcc7c487bf67b8e24f4b37229" 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::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="ga44f5a3a340865a5dc69a1dea7f615530"></a><!-- doxytag: member="glm::rotate" ref="ga44f5a3a340865a5dc69a1dea7f615530" 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::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="ga3ee0b8dd0f79849535cf0594c63fe6a9"></a><!-- doxytag: member="glm::shortMix" ref="ga3ee0b8dd0f79849535cf0594c63fe6a9" 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::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="gace2f0729df1d4fc04f60a1cd11b09dbf"></a><!-- doxytag: member="glm::squad" ref="gace2f0729df1d4fc04f60a1cd11b09dbf" 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::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="ga3f8121dd134844e5651532d5af283c62"></a><!-- doxytag: member="glm::toMat3" ref="ga3f8121dd134844e5651532d5af283c62" 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::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="a00092_source.html#l00189">189</a> of file <a class="el" href="a00092_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00164.html#ga815da020156496d268b9aaa72fe60ea0">glm::mat3_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga718c512e7b5490618c2b5be158f5eee5"></a><!-- doxytag: member="glm::toMat4" ref="ga718c512e7b5490618c2b5be158f5eee5" 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::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="a00092_source.html#l00195">195</a> of file <a class="el" href="a00092_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00164.html#ga2515d70c9edd4c6e68b11969a6e8549d">glm::mat4_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="ga57230ebe95889058579e0c2b1be93dbe"></a><!-- doxytag: member="glm::toQuat" ref="ga57230ebe95889058579e0c2b1be93dbe" 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::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="a00092_source.html#l00207">207</a> of file <a class="el" href="a00092_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00164.html#ga60f5a15b081119d6dd09038ae856e7e4">glm::quat_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="gac4651509e9eaa149d196fd641499ca99"></a><!-- doxytag: member="glm::toQuat" ref="gac4651509e9eaa149d196fd641499ca99" 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::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="a00092_source.html#l00201">201</a> of file <a class="el" href="a00092_source.html">gtx/quaternion.hpp</a>.</p>
<p>References <a class="el" href="a00164.html#ga60f5a15b081119d6dd09038ae856e7e4">glm::quat_cast()</a>.</p>
</div>
</div>
<a class="anchor" id="gaa38e83e059f81c0df5b097f73ea1c5d1"></a><!-- doxytag: member="glm::yaw" ref="gaa38e83e059f81c0df5b097f73ea1c5d1" args="(detail::tquat&lt; valType &gt; const &amp;x)" -->
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">valType glm::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.3 </small></address>
</body>
</html>