anbox/external/glm/doc/api/a00177.html
Simon Fels 5070880428 external: import local copy of GLM 0.9.7.2
This allows building against the same version of GLM across all targets
and not deal with API changes of newer GLM versions which introduce
regressions. Long term we want to migrate away from GLM and stick to a
minimal self-written subset.
2018-05-18 19:37:52 +02:00

882 lines
44 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"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.10"/>
<title>0.9.7: GLM_GTC_quaternion</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="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="projectlogo"><img alt="Logo" src="logo.png"/></td>
<td id="projectalign" style="padding-left: 0.5em;">
<div id="projectname">0.9.7
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.10 -->
<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="files.html"><span>Files</span></a></li>
</ul>
</div>
</div><!-- top -->
<div class="header">
<div class="summary">
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">GLM_GTC_quaternion<div class="ingroups"><a class="el" href="a00160.html">GTC Extensions (Stable)</a></div></div> </div>
</div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:gad4a4448baedb198b2b1e7880d2544dc9"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gad4a4448baedb198b2b1e7880d2544dc9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gad4a4448baedb198b2b1e7880d2544dc9">angle</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:gad4a4448baedb198b2b1e7880d2544dc9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga37ae19405f1ccf766f27e4fcd035d859"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga37ae19405f1ccf766f27e4fcd035d859"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga37ae19405f1ccf766f27e4fcd035d859">angleAxis</a> (T const &amp;angle, tvec3&lt; T, P &gt; const &amp;axis)</td></tr>
<tr class="separator:ga37ae19405f1ccf766f27e4fcd035d859"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0b3e87a13b2708154b72259e50789a19"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga0b3e87a13b2708154b72259e50789a19"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec3&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga0b3e87a13b2708154b72259e50789a19">axis</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga0b3e87a13b2708154b72259e50789a19"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab1ace864fbf189ffa368950001808a3c"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gab1ace864fbf189ffa368950001808a3c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gab1ace864fbf189ffa368950001808a3c">conjugate</a> (tquat&lt; T, P &gt; const &amp;q)</td></tr>
<tr class="separator:gab1ace864fbf189ffa368950001808a3c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac54dfc83de465a2d03e90d342242ab3d"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P, template&lt; typename, precision &gt; class quatType&gt; </td></tr>
<tr class="memitem:gac54dfc83de465a2d03e90d342242ab3d"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gac54dfc83de465a2d03e90d342242ab3d">dot</a> (quatType&lt; T, P &gt; const &amp;x, quatType&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:gac54dfc83de465a2d03e90d342242ab3d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac187115710365e0b2902220b9611e7b6"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gac187115710365e0b2902220b9611e7b6"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gac187115710365e0b2902220b9611e7b6">equal</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:gac187115710365e0b2902220b9611e7b6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gadb92ec1c1b0dd6b024176a73fbef3e64"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gadb92ec1c1b0dd6b024176a73fbef3e64"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec3&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gadb92ec1c1b0dd6b024176a73fbef3e64">eulerAngles</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:gadb92ec1c1b0dd6b024176a73fbef3e64"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga09d21a588ae425ac7517ea65cc59a5ae"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga09d21a588ae425ac7517ea65cc59a5ae"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga09d21a588ae425ac7517ea65cc59a5ae">greaterThan</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:ga09d21a588ae425ac7517ea65cc59a5ae"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga0906a221a2037519fcf316ea5c1e3b3e"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga0906a221a2037519fcf316ea5c1e3b3e"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga0906a221a2037519fcf316ea5c1e3b3e">greaterThanEqual</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:ga0906a221a2037519fcf316ea5c1e3b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5f47300c024c2d809944e6ac661d6d14"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga5f47300c024c2d809944e6ac661d6d14"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga5f47300c024c2d809944e6ac661d6d14">inverse</a> (tquat&lt; T, P &gt; const &amp;q)</td></tr>
<tr class="separator:ga5f47300c024c2d809944e6ac661d6d14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gac682181783027544c8d251b4d3a60cf8"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gac682181783027544c8d251b4d3a60cf8"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gac682181783027544c8d251b4d3a60cf8">length</a> (tquat&lt; T, P &gt; const &amp;q)</td></tr>
<tr class="separator:gac682181783027544c8d251b4d3a60cf8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5692804fa4db9e762a1c19b607e54435"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga5692804fa4db9e762a1c19b607e54435"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga5692804fa4db9e762a1c19b607e54435">lerp</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y, T a)</td></tr>
<tr class="separator:ga5692804fa4db9e762a1c19b607e54435"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga91a40d16a3b5bb47d71ac1a3fb688ffa"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga91a40d16a3b5bb47d71ac1a3fb688ffa"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga91a40d16a3b5bb47d71ac1a3fb688ffa">lessThan</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:ga91a40d16a3b5bb47d71ac1a3fb688ffa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga7c81996ed2724f26fe76faf352c76294"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga7c81996ed2724f26fe76faf352c76294"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga7c81996ed2724f26fe76faf352c76294">lessThanEqual</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:ga7c81996ed2724f26fe76faf352c76294"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae04c39422eb4e450ec8c4f45a1057b40"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gae04c39422eb4e450ec8c4f45a1057b40"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tmat3x3&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gae04c39422eb4e450ec8c4f45a1057b40">mat3_cast</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:gae04c39422eb4e450ec8c4f45a1057b40"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga14bb2ddf028c91542763eb6f2bba47ef"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga14bb2ddf028c91542763eb6f2bba47ef"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tmat4x4&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga14bb2ddf028c91542763eb6f2bba47ef">mat4_cast</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga14bb2ddf028c91542763eb6f2bba47ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga31cc82178742c36450f5662bd4fb30b0"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga31cc82178742c36450f5662bd4fb30b0"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga31cc82178742c36450f5662bd4fb30b0">mix</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y, T a)</td></tr>
<tr class="separator:ga31cc82178742c36450f5662bd4fb30b0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga35b6bcb22ac6d1e4a85440f5b69bdf86"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga35b6bcb22ac6d1e4a85440f5b69bdf86"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga35b6bcb22ac6d1e4a85440f5b69bdf86">normalize</a> (tquat&lt; T, P &gt; const &amp;q)</td></tr>
<tr class="separator:ga35b6bcb22ac6d1e4a85440f5b69bdf86"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga484c4633f7c05d8e29ee8b452350f539"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga484c4633f7c05d8e29ee8b452350f539"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tvec4&lt; bool, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga484c4633f7c05d8e29ee8b452350f539">notEqual</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y)</td></tr>
<tr class="separator:ga484c4633f7c05d8e29ee8b452350f539"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga2c08b93a4261c10748fd4d2104346f17"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga2c08b93a4261c10748fd4d2104346f17"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga2c08b93a4261c10748fd4d2104346f17">pitch</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga2c08b93a4261c10748fd4d2104346f17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga950f8acff3e33bbda77895a3dcb7e5ce"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga950f8acff3e33bbda77895a3dcb7e5ce"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga950f8acff3e33bbda77895a3dcb7e5ce">quat_cast</a> (tmat3x3&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga950f8acff3e33bbda77895a3dcb7e5ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga3e4615e9884dd0f41f5617b9848a5d9c"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga3e4615e9884dd0f41f5617b9848a5d9c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga3e4615e9884dd0f41f5617b9848a5d9c">quat_cast</a> (tmat4x4&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga3e4615e9884dd0f41f5617b9848a5d9c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4fd705376c6c1fd667be0055a0ea58ec"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga4fd705376c6c1fd667be0055a0ea58ec"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga4fd705376c6c1fd667be0055a0ea58ec">roll</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga4fd705376c6c1fd667be0055a0ea58ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa8f42979c921e450ff2812fb43c25702"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:gaa8f42979c921e450ff2812fb43c25702"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#gaa8f42979c921e450ff2812fb43c25702">rotate</a> (tquat&lt; T, P &gt; const &amp;q, T const &amp;angle, tvec3&lt; T, P &gt; const &amp;axis)</td></tr>
<tr class="separator:gaa8f42979c921e450ff2812fb43c25702"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga22b438c7252f3fa5b773c9882471652a"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga22b438c7252f3fa5b773c9882471652a"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL tquat&lt; T, P &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga22b438c7252f3fa5b773c9882471652a">slerp</a> (tquat&lt; T, P &gt; const &amp;x, tquat&lt; T, P &gt; const &amp;y, T a)</td></tr>
<tr class="separator:ga22b438c7252f3fa5b773c9882471652a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga724a5df282b70cec0a6cb0d6dcddb6d6"><td class="memTemplParams" colspan="2">template&lt;typename T , precision P&gt; </td></tr>
<tr class="memitem:ga724a5df282b70cec0a6cb0d6dcddb6d6"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00177.html#ga724a5df282b70cec0a6cb0d6dcddb6d6">yaw</a> (tquat&lt; T, P &gt; const &amp;x)</td></tr>
<tr class="separator:ga724a5df282b70cec0a6cb0d6dcddb6d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<p>Defines a templated quaternion type and several quaternion operations. </p>
<p>&lt;<a class="el" href="a00094.html" title="OpenGL Mathematics (glm.g-truc.net) ">glm/gtc/quaternion.hpp</a>&gt; need to be included to use these functionalities. </p>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="gad4a4448baedb198b2b1e7880d2544dc9"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::angle </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga37ae19405f1ccf766f27e4fcd035d859"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::angleAxis </td>
<td>(</td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>angle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tvec3&lt; T, P &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>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">angle</td><td>Angle expressed in radians. </td></tr>
<tr><td class="paramname">axis</td><td>Axis of the quaternion, must be normalized.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga0b3e87a13b2708154b72259e50789a19"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec3&lt;T, P&gt; glm::axis </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gab1ace864fbf189ffa368950001808a3c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::conjugate </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the q conjugate. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac54dfc83de465a2d03e90d342242ab3d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::dot </td>
<td>(</td>
<td class="paramtype">quatType&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">quatType&lt; T, P &gt; 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 dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ... </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac187115710365e0b2902220b9611e7b6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::equal </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison of result x == y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gadb92ec1c1b0dd6b024176a73fbef3e64"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec3&lt;T, P&gt; glm::eulerAngles </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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>The result is expressed in radians if GLM_FORCE_RADIANS is defined or degrees otherwise.</p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga09d21a588ae425ac7517ea65cc59a5ae"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::greaterThan </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison of result x &gt; y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga0906a221a2037519fcf316ea5c1e3b3e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::greaterThanEqual </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison of result x &gt;= y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga5f47300c024c2d809944e6ac661d6d14"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::inverse </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the q inverse. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gac682181783027544c8d251b4d3a60cf8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::length </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the length of the quaternion. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga5692804fa4db9e762a1c19b607e54435"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::lerp </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#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>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Linear interpolation of two quaternions. </p>
<p>The interpolation is oriented.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>A quaternion </td></tr>
<tr><td class="paramname">y</td><td>A quaternion </td></tr>
<tr><td class="paramname">a</td><td>Interpolation factor. The interpolation is defined in the range [0, 1]. </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>Value type used to build the quaternion. Supported: half, float or double. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga91a40d16a3b5bb47d71ac1a3fb688ffa"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::lessThan </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison result of x &lt; y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga7c81996ed2724f26fe76faf352c76294"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::lessThanEqual </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison of result x &lt;= y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gae04c39422eb4e450ec8c4f45a1057b40"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tmat3x3&lt;T, P&gt; glm::mat3_cast </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00095_source.html#l00153">glm::toMat3()</a>.</p>
</div>
</div>
<a class="anchor" id="ga14bb2ddf028c91542763eb6f2bba47ef"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tmat4x4&lt;T, P&gt; glm::mat4_cast </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00095_source.html#l00160">glm::toMat4()</a>.</p>
</div>
</div>
<a class="anchor" id="ga31cc82178742c36450f5662bd4fb30b0"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::mix </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#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>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Spherical linear interpolation of two quaternions. </p>
<p>The interpolation is oriented and the rotation is performed at constant speed. For short path spherical linear interpolation, use the slerp function.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>A quaternion </td></tr>
<tr><td class="paramname">y</td><td>A quaternion </td></tr>
<tr><td class="paramname">a</td><td>Interpolation factor. The interpolation is defined beyond the range [0, 1]. </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>Value type used to build the quaternion. Supported: half, float or double. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd>
<dd>
- slerp(tquat&lt;T, P&gt; const &amp; x, tquat&lt;T, P&gt; const &amp; y, T const &amp; a) </dd></dl>
</div>
</div>
<a class="anchor" id="ga35b6bcb22ac6d1e4a85440f5b69bdf86"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::normalize </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Returns the normalized quaternion. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga484c4633f7c05d8e29ee8b452350f539"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tvec4&lt;bool, P&gt; glm::notEqual </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; 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 the component-wise comparison of result x != y. </p>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">quatType</td><td>Floating-point quaternion types.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga2c08b93a4261c10748fd4d2104346f17"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::pitch </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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 expressed in radians. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00224.html" title="Extented quaternion types and functions. ">GLM_GTX_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga950f8acff3e33bbda77895a3dcb7e5ce"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::quat_cast </td>
<td>(</td>
<td class="paramtype">tmat3x3&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00095_source.html#l00167">glm::toQuat()</a>.</p>
</div>
</div>
<a class="anchor" id="ga3e4615e9884dd0f41f5617b9848a5d9c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::quat_cast </td>
<td>(</td>
<td class="paramtype">tmat4x4&lt; T, P &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>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga4fd705376c6c1fd667be0055a0ea58ec"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::roll </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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 expressed in radians. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00224.html" title="Extented quaternion types and functions. ">GLM_GTX_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaa8f42979c921e450ff2812fb43c25702"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::rotate </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">T const &amp;&#160;</td>
<td class="paramname"><em>angle</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tvec3&lt; T, P &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>Rotates a quaternion from a vector of 3 components axis and an angle. </p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">q</td><td>Source orientation </td></tr>
<tr><td class="paramname">angle</td><td>Angle expressed in radians. </td></tr>
<tr><td class="paramname">axis</td><td>Axis of the rotation</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga22b438c7252f3fa5b773c9882471652a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL tquat&lt;T, P&gt; glm::slerp </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">tquat&lt; T, P &gt; const &amp;&#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>a</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div><div class="memdoc">
<p>Spherical linear interpolation of two quaternions. </p>
<p>The interpolation always take the short path and the rotation is performed at constant speed.</p>
<dl class="params"><dt>Parameters</dt><dd>
<table class="params">
<tr><td class="paramname">x</td><td>A quaternion </td></tr>
<tr><td class="paramname">y</td><td>A quaternion </td></tr>
<tr><td class="paramname">a</td><td>Interpolation factor. The interpolation is defined beyond the range [0, 1]. </td></tr>
</table>
</dd>
</dl>
<dl class="tparams"><dt>Template Parameters</dt><dd>
<table class="tparams">
<tr><td class="paramname">T</td><td>Value type used to build the quaternion. Supported: half, float or double. </td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00177.html" title="Defines a templated quaternion type and several quaternion operations. ">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga724a5df282b70cec0a6cb0d6dcddb6d6"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">GLM_FUNC_DECL T glm::yaw </td>
<td>(</td>
<td class="paramtype">tquat&lt; T, P &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 expressed in radians. </p>
<dl class="section see"><dt>See also</dt><dd><a class="el" href="a00224.html" title="Extented quaternion types and functions. ">GLM_GTX_quaternion</a> </dd></dl>
</div>
</div>
</div><!-- contents -->
<!-- start footer part -->
<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.8.10
</small></address>
</body>
</html>