Updated documentation

This commit is contained in:
Christophe Riccio
2012-11-18 14:05:52 +01:00
parent 5474e33d08
commit 753d5db251
389 changed files with 47803 additions and 49899 deletions

View File

@@ -2,454 +2,653 @@
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>GLM_GTC_type_ptr: Memory layout access</title>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>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! -->
<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-mini.png"/></td>
<td id="projectlogo"><img alt="Logo" src="logo.png"/></td>
</tr>
</tbody>
</table>
</div>
<!-- Generated by Doxygen 1.7.5.1 -->
<!-- end header part -->
<!-- Generated by Doxygen 1.8.2 -->
<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><!-- top -->
<div class="header">
<div class="summary">
<a href="#typedef-members">Typedefs</a> &#124;
<a href="#func-members">Functions</a> </div>
<div class="headertitle">
<div class="title">GLM_GTC_type_ptr: Memory layout access</div> </div>
<div class="ingroups"><a class="el" href="a00136.html">GTC Extensions (Stable)</a></div></div>
<div class="title">GLM_GTC_quaternion</div> </div>
<div class="ingroups"><a class="el" href="a00138.html">GTC Extensions (Stable)</a></div></div><!--header-->
<div class="contents">
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="func-members"></a>
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
Typedefs</h2></td></tr>
<tr class="memitem:ga5428321324094c7170d6133c8139d255"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat&lt; double &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#ga5428321324094c7170d6133c8139d255">dquat</a></td></tr>
<tr class="separator:ga5428321324094c7170d6133c8139d255"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaae07c293efbe1c530ff18044a15fe662"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#gaae07c293efbe1c530ff18044a15fe662">fquat</a></td></tr>
<tr class="separator:gaae07c293efbe1c530ff18044a15fe662"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8a7c2c751ad30db9ec4268a6b7d99f6c"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat<br class="typebreak"/>
&lt; highp_float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#ga8a7c2c751ad30db9ec4268a6b7d99f6c">highp_quat</a></td></tr>
<tr class="separator:ga8a7c2c751ad30db9ec4268a6b7d99f6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaba1bbdeae84c942ce0dc83af40e1d7d3"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat<br class="typebreak"/>
&lt; detail::half &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#gaba1bbdeae84c942ce0dc83af40e1d7d3">hquat</a></td></tr>
<tr class="separator:gaba1bbdeae84c942ce0dc83af40e1d7d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga5acd0f3e9f9e3c0e6577440443ec4594"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat&lt; lowp_float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#ga5acd0f3e9f9e3c0e6577440443ec4594">lowp_quat</a></td></tr>
<tr class="separator:ga5acd0f3e9f9e3c0e6577440443ec4594"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae93fe73ea5fe5e2150c2eb0641394dc8"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat<br class="typebreak"/>
&lt; mediump_float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#gae93fe73ea5fe5e2150c2eb0641394dc8">mediump_quat</a></td></tr>
<tr class="separator:gae93fe73ea5fe5e2150c2eb0641394dc8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga60408579db470456070a3336295625a7"><td class="memItemLeft" align="right" valign="top">typedef detail::tquat&lt; float &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00153.html#ga60408579db470456070a3336295625a7">quat</a></td></tr>
<tr class="separator:ga60408579db470456070a3336295625a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x2&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gafd896ef261762a6ab412b61181d5ecae">make_mat2</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x2&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga1d0007368a23e89e4a0efcda06c1fa27">make_mat2x2</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga87d29f47fbd3990a344be2eac404aee3">make_mat2x3</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat2x4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaab3df4b27b38505f1413f507ebc43d18">make_mat2x4</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gacd8f067b4fb7bd3d48663102b5178ef2">make_mat3</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x2&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga8764d696bd4dfb91d689ca196414b36b">make_mat3x2</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga56ddd61c1c64dba464e392b2c2011226">make_mat3x3</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaae2b48f5109461f13f63ccf5b4cde672">make_mat3x4</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga723dd6241d4edf2ad48b25e5007054a7">make_mat4</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x2&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga3717ecbb38c8a24043ee17bdff94bca5">make_mat4x2</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gae91cc925c4154c5fe4ef1fc7da96a9a8">make_mat4x3</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaa287485a3978d319e60a1cadd8a1c139">make_mat4x4</a> (T const *const ptr)</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="a00153.html#ga341b6592d08bc2e3871ceec05e0c060d">make_quat</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec2&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga60e64ef452541f76f7b5b4e04b18062a">make_vec2</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga0e2e7d24d80edb5a95a86c6a76ae5a41">make_vec3</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">detail::tvec4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga5d91c17941c35effc46b335ad6fb6252">make_vec4</a> (T const *const ptr)</td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename genType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">genType::value_type const *&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga140f5c39d519780c61e02e47daa7d18a">value_ptr</a> (genType const &amp;vec)</td></tr>
<tr class="memitem:ga69041d18bd8539fe82d6170932d28362"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga69041d18bd8539fe82d6170932d28362"><td class="memTemplItemLeft" align="right" valign="top">valType&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga69041d18bd8539fe82d6170932d28362">angle</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr class="separator:ga69041d18bd8539fe82d6170932d28362"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaafc03953867e42a39dc08575ad4532ad"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:gaafc03953867e42a39dc08575ad4532ad"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaafc03953867e42a39dc08575ad4532ad">angleAxis</a> (valType const &amp;angle, valType const &amp;x, valType const &amp;y, valType const &amp;z)</td></tr>
<tr class="separator:gaafc03953867e42a39dc08575ad4532ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga30071b5b9773087b7212a5ce67d0d90a"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga30071b5b9773087b7212a5ce67d0d90a"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga30071b5b9773087b7212a5ce67d0d90a">angleAxis</a> (valType const &amp;angle, detail::tvec3&lt; valType &gt; const &amp;axis)</td></tr>
<tr class="separator:ga30071b5b9773087b7212a5ce67d0d90a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga72457604550d0414e522dbec0d98f276"><td class="memTemplParams" colspan="2">template&lt;typename valType &gt; </td></tr>
<tr class="memitem:ga72457604550d0414e522dbec0d98f276"><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; valType &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga72457604550d0414e522dbec0d98f276">axis</a> (detail::tquat&lt; valType &gt; const &amp;x)</td></tr>
<tr class="separator:ga72457604550d0414e522dbec0d98f276"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8b6594dffb8bf455d848ffa2169ba41d"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga8b6594dffb8bf455d848ffa2169ba41d"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga8b6594dffb8bf455d848ffa2169ba41d">conjugate</a> (detail::tquat&lt; T &gt; const &amp;q)</td></tr>
<tr class="separator:ga8b6594dffb8bf455d848ffa2169ba41d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gab9101d7f5b27ca682fc84e32b8fd70ad"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gab9101d7f5b27ca682fc84e32b8fd70ad"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gab9101d7f5b27ca682fc84e32b8fd70ad">dot</a> (detail::tquat&lt; T &gt; const &amp;q1, detail::tquat&lt; T &gt; const &amp;q2)</td></tr>
<tr class="separator:gab9101d7f5b27ca682fc84e32b8fd70ad"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaa53e0e8933e176c6207720433fb8dd2b"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gaa53e0e8933e176c6207720433fb8dd2b"><td class="memTemplItemLeft" align="right" valign="top">detail::tvec3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaa53e0e8933e176c6207720433fb8dd2b">eulerAngles</a> (detail::tquat&lt; T &gt; const &amp;x)</td></tr>
<tr class="separator:gaa53e0e8933e176c6207720433fb8dd2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga78b87a5e7152108e0dff0855d81b3bc1"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga78b87a5e7152108e0dff0855d81b3bc1"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga78b87a5e7152108e0dff0855d81b3bc1">inverse</a> (detail::tquat&lt; T &gt; const &amp;q)</td></tr>
<tr class="separator:ga78b87a5e7152108e0dff0855d81b3bc1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga60d5647f87c2c423497d0f3bf8c407b8"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga60d5647f87c2c423497d0f3bf8c407b8"><td class="memTemplItemLeft" align="right" valign="top">T&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga60d5647f87c2c423497d0f3bf8c407b8">length</a> (detail::tquat&lt; T &gt; const &amp;q)</td></tr>
<tr class="separator:ga60d5647f87c2c423497d0f3bf8c407b8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gae04ce320008c9bec0037b4ba21853cb5"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gae04ce320008c9bec0037b4ba21853cb5"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat3x3&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gae04ce320008c9bec0037b4ba21853cb5">mat3_cast</a> (detail::tquat&lt; T &gt; const &amp;x)</td></tr>
<tr class="separator:gae04ce320008c9bec0037b4ba21853cb5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga8c376eb15971eb52d85df5ee26825627"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga8c376eb15971eb52d85df5ee26825627"><td class="memTemplItemLeft" align="right" valign="top">detail::tmat4x4&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga8c376eb15971eb52d85df5ee26825627">mat4_cast</a> (detail::tquat&lt; T &gt; const &amp;x)</td></tr>
<tr class="separator:ga8c376eb15971eb52d85df5ee26825627"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gaaea9592fd53952b636d680321edcdb31"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gaaea9592fd53952b636d680321edcdb31"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gaaea9592fd53952b636d680321edcdb31">mix</a> (detail::tquat&lt; T &gt; const &amp;x, detail::tquat&lt; T &gt; const &amp;y, T const &amp;a)</td></tr>
<tr class="separator:gaaea9592fd53952b636d680321edcdb31"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:gabd269bb967469a6f1df5963455fee6be"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:gabd269bb967469a6f1df5963455fee6be"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#gabd269bb967469a6f1df5963455fee6be">normalize</a> (detail::tquat&lt; T &gt; const &amp;q)</td></tr>
<tr class="separator:gabd269bb967469a6f1df5963455fee6be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga4d37447d81ceade1d10d68c995a4d881"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga4d37447d81ceade1d10d68c995a4d881"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga4d37447d81ceade1d10d68c995a4d881">quat_cast</a> (detail::tmat3x3&lt; T &gt; const &amp;x)</td></tr>
<tr class="separator:ga4d37447d81ceade1d10d68c995a4d881"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga24adafe33b0bcad906c8724a762e5299"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga24adafe33b0bcad906c8724a762e5299"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga24adafe33b0bcad906c8724a762e5299">quat_cast</a> (detail::tmat4x4&lt; T &gt; const &amp;x)</td></tr>
<tr class="separator:ga24adafe33b0bcad906c8724a762e5299"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ga297d6a9635153c76d7c011efa716b5da"><td class="memTemplParams" colspan="2">template&lt;typename T &gt; </td></tr>
<tr class="memitem:ga297d6a9635153c76d7c011efa716b5da"><td class="memTemplItemLeft" align="right" valign="top">detail::tquat&lt; T &gt;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00153.html#ga297d6a9635153c76d7c011efa716b5da">rotate</a> (detail::tquat&lt; T &gt; const &amp;q, typename detail::tquat&lt; T &gt;::value_type const &amp;angle, detail::tvec3&lt; T &gt; const &amp;axis)</td></tr>
<tr class="separator:ga297d6a9635153c76d7c011efa716b5da"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<p>Handles the interaction between pointers and vector, matrix types. </p>
<p>This extension defines an overloaded function, glm::value_ptr, which takes any of the <a class="el" href="a00142.html">core template types</a>. It returns a pointer to the memory layout of the object. Matrix types store their values in column-major order.</p>
<p>This is useful for uploading data to matrices or copying data to buffer objects.</p>
<p>Example: </p>
<div class="fragment"><pre class="fragment"><span class="preprocessor"> #include &lt;<a class="code" href="a00035.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/glm.hpp</a>&gt;</span>
<span class="preprocessor"> #include &lt;<a class="code" href="a00108.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/gtc/type_ptr.hpp</a>&gt;</span>
<a class="code" href="a00140.html#ga8a44105c47072f9ea1413f15faa31f64" title="3 components vector of floating-point numbers.">glm::vec3</a> aVector(3);
<a class="code" href="a00140.html#gade0eb47c01f79384a6f38017ede17446" title="4 columns of 4 components matrix of floating-point numbers.">glm::mat4</a> someMatrix(1.0);
glUniform3fv(uniformLoc, 1, <a class="code" href="a00153.html#ga140f5c39d519780c61e02e47daa7d18a" title="Return the constant address to the data of the input parameter.">glm::value_ptr</a>(aVector));
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, <a class="code" href="a00153.html#ga140f5c39d519780c61e02e47daa7d18a" title="Return the constant address to the data of the input parameter.">glm::value_ptr</a>(someMatrix));
</pre></div><p>&lt;<a class="el" href="a00108.html" title="OpenGL Mathematics (glm.g-truc.net)">glm/gtc/type_ptr.hpp</a>&gt; need to be included to use these functionalities. </p>
<hr/><h2>Function Documentation</h2>
<a class="anchor" id="gafd896ef261762a6ab412b61181d5ecae"></a><!-- doxytag: member="glm::make_mat2" ref="gafd896ef261762a6ab412b61181d5ecae" args="(T const *const ptr)" -->
<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="a00076.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">Typedef Documentation</h2>
<a class="anchor" id="ga5428321324094c7170d6133c8139d255"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x2&lt;T&gt; glm::make_mat2 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;double&gt; dquat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of double-precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00301">301</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ga1d0007368a23e89e4a0efcda06c1fa27"></a><!-- doxytag: member="glm::make_mat2x2" ref="ga1d0007368a23e89e4a0efcda06c1fa27" args="(T const *const ptr)" -->
<a class="anchor" id="gaae07c293efbe1c530ff18044a15fe662"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x2&lt;T&gt; glm::make_mat2x2 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;float&gt; fquat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of single-precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00296">296</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ga87d29f47fbd3990a344be2eac404aee3"></a><!-- doxytag: member="glm::make_mat2x3" ref="ga87d29f47fbd3990a344be2eac404aee3" args="(T const *const ptr)" -->
<a class="anchor" id="ga8a7c2c751ad30db9ec4268a6b7d99f6c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x3&lt;T&gt; glm::make_mat2x3 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;highp_float&gt; highp_quat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of high precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00316">316</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="gaab3df4b27b38505f1413f507ebc43d18"></a><!-- doxytag: member="glm::make_mat2x4" ref="gaab3df4b27b38505f1413f507ebc43d18" args="(T const *const ptr)" -->
<a class="anchor" id="gaba1bbdeae84c942ce0dc83af40e1d7d3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat2x4&lt;T&gt; glm::make_mat2x4 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;detail::half&gt; hquat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of half-precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00291">291</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="gacd8f067b4fb7bd3d48663102b5178ef2"></a><!-- doxytag: member="glm::make_mat3" ref="gacd8f067b4fb7bd3d48663102b5178ef2" args="(T const *const ptr)" -->
<a class="anchor" id="ga5acd0f3e9f9e3c0e6577440443ec4594"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x3&lt;T&gt; glm::make_mat3 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;lowp_float&gt; lowp_quat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of low precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00306">306</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ga8764d696bd4dfb91d689ca196414b36b"></a><!-- doxytag: member="glm::make_mat3x2" ref="ga8764d696bd4dfb91d689ca196414b36b" args="(T const *const ptr)" -->
<a class="anchor" id="gae93fe73ea5fe5e2150c2eb0641394dc8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x2&lt;T&gt; glm::make_mat3x2 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;mediump_float&gt; mediump_quat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of medium precision floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00311">311</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="ga56ddd61c1c64dba464e392b2c2011226"></a><!-- doxytag: member="glm::make_mat3x3" ref="ga56ddd61c1c64dba464e392b2c2011226" args="(T const *const ptr)" -->
<a class="anchor" id="ga60408579db470456070a3336295625a7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x3&lt;T&gt; glm::make_mat3x3 </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td></td>
<td class="memname">typedef detail::tquat&lt;float&gt; quat</td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Quaternion of floating-point numbers. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Definition at line <a class="el" href="a00076_source.html#l00286">286</a> of file <a class="el" href="a00076_source.html">gtc/quaternion.hpp</a>.</p>
</div>
</div>
<a class="anchor" id="gaae2b48f5109461f13f63ccf5b4cde672"></a><!-- doxytag: member="glm::make_mat3x4" ref="gaae2b48f5109461f13f63ccf5b4cde672" args="(T const *const ptr)" -->
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ga69041d18bd8539fe82d6170932d28362"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat3x4&lt;T&gt; glm::make_mat3x4 </td>
<td class="memname">valType glm::angle </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></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">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns the quaternion rotation angle. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga723dd6241d4edf2ad48b25e5007054a7"></a><!-- doxytag: member="glm::make_mat4" ref="ga723dd6241d4edf2ad48b25e5007054a7" args="(T const *const ptr)" -->
<a class="anchor" id="gaafc03953867e42a39dc08575ad4532ad"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x4&lt;T&gt; glm::make_mat4 </td>
<td class="memname">detail::tquat&lt;valType&gt; glm::angleAxis </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></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">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<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 if GLM_FORCE_RADIANS is define or degrees otherwise. </td></tr>
<tr><td class="paramname">x</td><td>x component of the x-axis, x, y, z must be a normalized axis </td></tr>
<tr><td class="paramname">y</td><td>y component of the y-axis, x, y, z must be a normalized axis </td></tr>
<tr><td class="paramname">z</td><td>z component of the z-axis, x, y, z must be a normalized axis</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga3717ecbb38c8a24043ee17bdff94bca5"></a><!-- doxytag: member="glm::make_mat4x2" ref="ga3717ecbb38c8a24043ee17bdff94bca5" args="(T const *const ptr)" -->
<a class="anchor" id="ga30071b5b9773087b7212a5ce67d0d90a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x2&lt;T&gt; glm::make_mat4x2 </td>
<td class="memname">detail::tquat&lt;valType&gt; glm::angleAxis </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></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">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<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 if GLM_FORCE_RADIANS is define or degrees otherwise. </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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gae91cc925c4154c5fe4ef1fc7da96a9a8"></a><!-- doxytag: member="glm::make_mat4x3" ref="gae91cc925c4154c5fe4ef1fc7da96a9a8" args="(T const *const ptr)" -->
<a class="anchor" id="ga72457604550d0414e522dbec0d98f276"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x3&lt;T&gt; glm::make_mat4x3 </td>
<td class="memname">detail::tvec3&lt;valType&gt; glm::axis </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></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">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns the q rotation axis. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gaa287485a3978d319e60a1cadd8a1c139"></a><!-- doxytag: member="glm::make_mat4x4" ref="gaa287485a3978d319e60a1cadd8a1c139" args="(T const *const ptr)" -->
<a class="anchor" id="ga8b6594dffb8bf455d848ffa2169ba41d"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x4&lt;T&gt; glm::make_mat4x4 </td>
<td class="memname">detail::tquat&lt;T&gt; glm::conjugate </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a matrix from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns the q conjugate. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga341b6592d08bc2e3871ceec05e0c060d"></a><!-- doxytag: member="glm::make_quat" ref="ga341b6592d08bc2e3871ceec05e0c060d" args="(T const *const ptr)" -->
<a class="anchor" id="gab9101d7f5b27ca682fc84e32b8fd70ad"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::make_quat </td>
<td class="memname">T glm::dot </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &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; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>q2</em>&#160;</td>
</tr>
<tr>
<td></td>
<td>)</td>
<td></td><td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a quaternion from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga60e64ef452541f76f7b5b4e04b18062a"></a><!-- doxytag: member="glm::make_vec2" ref="ga60e64ef452541f76f7b5b4e04b18062a" args="(T const *const ptr)" -->
<a class="anchor" id="gaa53e0e8933e176c6207720433fb8dd2b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec2&lt;T&gt; glm::make_vec2 </td>
<td class="memname">detail::tvec3&lt;T&gt; glm::eulerAngles </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a vector from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns euler angles, yitch as x, yaw as y, roll as z. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga0e2e7d24d80edb5a95a86c6a76ae5a41"></a><!-- doxytag: member="glm::make_vec3" ref="ga0e2e7d24d80edb5a95a86c6a76ae5a41" args="(T const *const ptr)" -->
<a class="anchor" id="ga78b87a5e7152108e0dff0855d81b3bc1"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec3&lt;T&gt; glm::make_vec3 </td>
<td class="memname">detail::tquat&lt;T&gt; glm::inverse </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a vector from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns the q inverse. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga5d91c17941c35effc46b335ad6fb6252"></a><!-- doxytag: member="glm::make_vec4" ref="ga5d91c17941c35effc46b335ad6fb6252" args="(T const *const ptr)" -->
<a class="anchor" id="ga60d5647f87c2c423497d0f3bf8c407b8"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tvec4&lt;T&gt; glm::make_vec4 </td>
<td class="memname">T glm::length </td>
<td>(</td>
<td class="paramtype">T const *const&#160;</td>
<td class="paramname"><em>ptr</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Build a vector from a pointer. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Returns the length of the quaternion. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga140f5c39d519780c61e02e47daa7d18a"></a><!-- doxytag: member="glm::value_ptr" ref="ga140f5c39d519780c61e02e47daa7d18a" args="(genType const &amp;vec)" -->
<a class="anchor" id="gae04ce320008c9bec0037b4ba21853cb5"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">genType::value_type const* glm::value_ptr </td>
<td class="memname">detail::tmat3x3&lt;T&gt; glm::mat3_cast </td>
<td>(</td>
<td class="paramtype">genType const &amp;&#160;</td>
<td class="paramname"><em>vec</em></td><td>)</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>x</em></td><td>)</td>
<td></td>
</tr>
</table>
</div>
<div class="memdoc">
</div><div class="memdoc">
<p>Return the constant address to the data of the input parameter. </p>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="a00153.html" title="Handles the interaction between pointers and vector, matrix types.">GLM_GTC_type_ptr: Memory layout access</a> </dd></dl>
<p>Converts a quaternion to a 3 * 3 matrix. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00077_source.html#l00177">glm::toMat3()</a>.</p>
</div>
</div>
<a class="anchor" id="ga8c376eb15971eb52d85df5ee26825627"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tmat4x4&lt;T&gt; glm::mat4_cast </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; T &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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00077_source.html#l00184">glm::toMat4()</a>.</p>
</div>
</div>
<a class="anchor" id="gaaea9592fd53952b636d680321edcdb31"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::mix </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>Returns a SLERP interpolated quaternion of x and y according a. </p>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="gabd269bb967469a6f1df5963455fee6be"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::normalize </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; T &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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga4d37447d81ceade1d10d68c995a4d881"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::quat_cast </td>
<td>(</td>
<td class="paramtype">detail::tmat3x3&lt; T &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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
<p>Referenced by <a class="el" href="a00077_source.html#l00191">glm::toQuat()</a>.</p>
</div>
</div>
<a class="anchor" id="ga24adafe33b0bcad906c8724a762e5299"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::quat_cast </td>
<td>(</td>
<td class="paramtype">detail::tmat4x4&lt; T &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="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_quaternion</a> </dd></dl>
</div>
</div>
<a class="anchor" id="ga297d6a9635153c76d7c011efa716b5da"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">detail::tquat&lt;T&gt; glm::rotate </td>
<td>(</td>
<td class="paramtype">detail::tquat&lt; T &gt; const &amp;&#160;</td>
<td class="paramname"><em>q</em>, </td>
</tr>
<tr>
<td class="paramkey"></td>
<td></td>
<td class="paramtype">typename detail::tquat&lt; T &gt;::value_type 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; T &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 an 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 if GLM_FORCE_RADIANS is define or degrees otherwise. </td></tr>
<tr><td class="paramname">axis</td><td>Axis of the rotation, must be normalized.</td></tr>
</table>
</dd>
</dl>
<dl class="section see"><dt>See Also</dt><dd><a class="el" href="a00153.html" title="Defines a templated quaternion type and several quaternion operations.">GLM_GTC_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.7.5.1
</a> 1.8.2
</small></address>
</body>
</html>