<ahref="a00017.html">Go to the documentation of this file.</a><divclass="fragment"><divclass="line"><aname="l00001"></a><spanclass="lineno"> 1</span> </div>
<divclass="line"><aname="l00050"></a><spanclass="lineno"> 50</span> <spanclass="preprocessor">#if(GLM_COMPILER & GLM_COMPILER_VC)</span></div>
<divclass="line"><aname="l00051"></a><spanclass="lineno"> 51</span> <spanclass="preprocessor"></span><spanclass="preprocessor"># include <cfloat></span></div>
<divclass="line"><aname="l00052"></a><spanclass="lineno"> 52</span> <spanclass="preprocessor">#elif(GLM_COMPILER & GLM_COMPILER_GCC)</span></div>
<divclass="line"><aname="l00053"></a><spanclass="lineno"> 53</span> <spanclass="preprocessor"></span><spanclass="preprocessor"># include <cmath></span></div>
<divclass="line"><aname="l00054"></a><spanclass="lineno"> 54</span> <spanclass="preprocessor"># if(GLM_PLATFORM & GLM_PLATFORM_ANDROID)</span></div>
<divclass="line"><aname="l00064"></a><spanclass="lineno"><aclass="line"href="a00190.html#ga5494ba3a95ea6594c86fc75236886864"> 64</a></span> <spanclass="keyword">template</span><<spanclass="keyword">typename</span> T> GLM_FUNC_QUALIFIER T <aclass="code"href="a00179.html#gafc1c989eaa2c786d34218b176f680fe0">lerp</a>(T x, T y, T a){<spanclass="keywordflow">return</span><aclass="code"href="a00155.html#ga78aae7eea618ca112053d59fe03db239">mix</a>(x, y, a);} </div>
<divclass="line"><aname="l00065"></a><spanclass="lineno"><aclass="line"href="a00190.html#gad97d71f29fcd1d51a1857a74b67490a0"> 65</a></span> <spanclass="keyword">template</span><<spanclass="keyword">typename</span> T, precision P> GLM_FUNC_QUALIFIER detail::tvec2<T, P><aclass="code"href="a00179.html#gafc1c989eaa2c786d34218b176f680fe0">lerp</a>(<spanclass="keyword">const</span> detail::tvec2<T, P>& x, <spanclass="keyword">const</span> detail::tvec2<T, P>& y, T a){<spanclass="keywordflow">return</span><aclass="code"href="a00155.html#ga78aae7eea618ca112053d59fe03db239">mix</a>(x, y, a);} </div>
<divclass="line"><aname="l00073"></a><spanclass="lineno"><aclass="line"href="a00190.html#gaa47df8c302c9b42c813da3f658f90e1a"> 73</a></span> <spanclass="keyword">template</span><<spanclass="keyword">typename</span> T, precision P> GLM_FUNC_QUALIFIER T <aclass="code"href="a00179.html#ga7468a211a20ea56ea5cfb0625226868a">slerp</a>(detail::tquat<T, P><spanclass="keyword">const</span>& x, detail::tquat<T, P><spanclass="keyword">const</span>& y, T <spanclass="keyword">const</span>& a){<spanclass="keywordflow">return</span><aclass="code"href="a00155.html#ga78aae7eea618ca112053d59fe03db239">mix</a>(x, y, a);} </div>
<divclass="ttc"id="a00190_html_gaa655c15e3231b8748c73010fe2d05d15"><divclass="ttname"><ahref="a00190.html#gaa655c15e3231b8748c73010fe2d05d15">glm::bool4x2</a></div><divclass="ttdeci">detail::tmat4x2< bool, highp > bool4x2</div><divclass="ttdoc">boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00102">compatibility.hpp:102</a></div></div>
<divclass="ttc"id="a00179_html_gafc1c989eaa2c786d34218b176f680fe0"><divclass="ttname"><ahref="a00179.html#gafc1c989eaa2c786d34218b176f680fe0">glm::lerp</a></div><divclass="ttdeci">GLM_FUNC_DECL detail::tquat< T, P > lerp(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a)</div><divclass="ttdoc">Linear interpolation of two quaternions. </div></div>
<divclass="ttc"id="a00190_html_ga182a464a6c53e2ee4a5be9d5a657625c"><divclass="ttname"><ahref="a00190.html#ga182a464a6c53e2ee4a5be9d5a657625c">glm::int4x2</a></div><divclass="ttdeci">detail::tmat4x2< int, highp > int4x2</div><divclass="ttdoc">integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00118">compatibility.hpp:118</a></div></div>
<divclass="ttc"id="a00190_html_ga0fd09e616d122bc2ed9726682ffd44b7"><divclass="ttname"><ahref="a00190.html#ga0fd09e616d122bc2ed9726682ffd44b7">glm::saturate</a></div><divclass="ttdeci">GLM_FUNC_QUALIFIER T saturate(T x)</div><divclass="ttdoc">Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00075">compatibility.hpp:75</a></div></div>
<divclass="ttc"id="a00190_html_gad35ec08585e8b762c4269b39ae702fee"><divclass="ttname"><ahref="a00190.html#gad35ec08585e8b762c4269b39ae702fee">glm::float3x3</a></div><divclass="ttdeci">detail::tmat3x3< float, highp > float3x3</div><divclass="ttdoc">single-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00132">compatibility.hpp:132</a></div></div>
<divclass="ttc"id="a00190_html_gab77dc4d222fe76167761f8d492edcc30"><divclass="ttname"><ahref="a00190.html#gab77dc4d222fe76167761f8d492edcc30">glm::double4x3</a></div><divclass="ttdeci">detail::tmat4x3< double, highp > double4x3</div><divclass="ttdoc">double-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00151">compatibility.hpp:151</a></div></div>
<divclass="ttc"id="a00155_html_ga78aae7eea618ca112053d59fe03db239"><divclass="ttname"><ahref="a00155.html#ga78aae7eea618ca112053d59fe03db239">glm::mix</a></div><divclass="ttdeci">GLM_FUNC_DECL genTypeT mix(genTypeT const &x, genTypeT const &y, genTypeU const &a)</div><divclass="ttdoc">If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...</div></div>
<divclass="ttc"id="a00190_html_ga056ffe02d3a45af626f8e62221881c7a"><divclass="ttname"><ahref="a00190.html#ga056ffe02d3a45af626f8e62221881c7a">glm::int1x1</a></div><divclass="ttdeci">int int1x1</div><divclass="ttdoc">integer matrix with 1 component. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00111">compatibility.hpp:111</a></div></div>
<divclass="ttc"id="a00190_html_ga7f895c936f0c29c8729afbbf22806090"><divclass="ttname"><ahref="a00190.html#ga7f895c936f0c29c8729afbbf22806090">glm::bool1x1</a></div><divclass="ttdeci">bool bool1x1</div><divclass="ttdoc">boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00095">compatibility.hpp:95</a></div></div>
<divclass="ttc"id="a00190_html_gaa933647704650189de6d36317168aa76"><divclass="ttname"><ahref="a00190.html#gaa933647704650189de6d36317168aa76">glm::double4x4</a></div><divclass="ttdeci">detail::tmat4x4< double, highp > double4x4</div><divclass="ttdoc">double-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00152">compatibility.hpp:152</a></div></div>
<divclass="ttc"id="a00190_html_ga1f943dba63761935a0624e7d7908a1e7"><divclass="ttname"><ahref="a00190.html#ga1f943dba63761935a0624e7d7908a1e7">glm::double2x2</a></div><divclass="ttdeci">detail::tmat2x2< double, highp > double2x2</div><divclass="ttdoc">double-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00144">compatibility.hpp:144</a></div></div>
<divclass="ttc"id="a00190_html_ga9055956ff71b40b00d481bdfaefee749"><divclass="ttname"><ahref="a00190.html#ga9055956ff71b40b00d481bdfaefee749">glm::bool2x3</a></div><divclass="ttdeci">detail::tmat2x3< bool, highp > bool2x3</div><divclass="ttdoc">boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00097">compatibility.hpp:97</a></div></div>
<divclass="ttc"id="a00190_html_ga0670a2111b5e4a6410bd027fa0232fc3"><divclass="ttname"><ahref="a00190.html#ga0670a2111b5e4a6410bd027fa0232fc3">glm::int1</a></div><divclass="ttdeci">int int1</div><divclass="ttdoc">integer vector with 1 component. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00106">compatibility.hpp:106</a></div></div>
<divclass="ttc"id="a00190_html_gab7dc1097e549a69842d22af0b87c8a40"><divclass="ttname"><ahref="a00190.html#gab7dc1097e549a69842d22af0b87c8a40">glm::float2x4</a></div><divclass="ttdeci">detail::tmat2x4< float, highp > float2x4</div><divclass="ttdoc">single-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00130">compatibility.hpp:130</a></div></div>
<divclass="ttc"id="a00190_html_ga153c7b61d6796873619ed6b11465cef3"><divclass="ttname"><ahref="a00190.html#ga153c7b61d6796873619ed6b11465cef3">glm::double3x2</a></div><divclass="ttdeci">detail::tmat3x2< double, highp > double3x2</div><divclass="ttdoc">double-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00147">compatibility.hpp:147</a></div></div>
<divclass="ttc"id="a00190_html_ga9031843cb4a32bfb9c8c80bb48c0f2a9"><divclass="ttname"><ahref="a00190.html#ga9031843cb4a32bfb9c8c80bb48c0f2a9">glm::bool4</a></div><divclass="ttdeci">detail::tvec4< bool, highp > bool4</div><divclass="ttdoc">boolean type with 4 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00093">compatibility.hpp:93</a></div></div>
<divclass="ttc"id="a00190_html_gac63011205bf6d0be82589dc56dd26708"><divclass="ttname"><ahref="a00190.html#gac63011205bf6d0be82589dc56dd26708">glm::atan2</a></div><divclass="ttdeci">GLM_FUNC_QUALIFIER T atan2(T x, T y)</div><divclass="ttdoc">Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what q...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00080">compatibility.hpp:80</a></div></div>
<divclass="ttc"id="a00190_html_gab32c92ae54c4535059c55a82d266353d"><divclass="ttname"><ahref="a00190.html#gab32c92ae54c4535059c55a82d266353d">glm::bool3x2</a></div><divclass="ttdeci">detail::tmat3x2< bool, highp > bool3x2</div><divclass="ttdoc">boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00099">compatibility.hpp:99</a></div></div>
<divclass="ttc"id="a00190_html_ga08d99da613c94074e19447b9db258da4"><divclass="ttname"><ahref="a00190.html#ga08d99da613c94074e19447b9db258da4">glm::int4x4</a></div><divclass="ttdeci">detail::tmat4x4< int, highp > int4x4</div><divclass="ttdoc">integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00120">compatibility.hpp:120</a></div></div>
<divclass="ttc"id="a00190_html_gaddcd7aa2e30e61af5b38660613d3979e"><divclass="ttname"><ahref="a00190.html#gaddcd7aa2e30e61af5b38660613d3979e">glm::bool1</a></div><divclass="ttdeci">bool bool1</div><divclass="ttdoc">boolean type with 1 component. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00090">compatibility.hpp:90</a></div></div>
<divclass="ttc"id="a00190_html_ga4f11f12cd789bb33ce53466bd50fd55f"><divclass="ttname"><ahref="a00190.html#ga4f11f12cd789bb33ce53466bd50fd55f">glm::int2x4</a></div><divclass="ttdeci">detail::tmat2x4< int, highp > int2x4</div><divclass="ttdoc">integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00114">compatibility.hpp:114</a></div></div>
<divclass="ttc"id="a00190_html_gab315512c11ca10dcf07d827be0fd370e"><divclass="ttname"><ahref="a00190.html#gab315512c11ca10dcf07d827be0fd370e">glm::double2x4</a></div><divclass="ttdeci">detail::tmat2x4< double, highp > double2x4</div><divclass="ttdoc">double-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00146">compatibility.hpp:146</a></div></div>
<divclass="ttc"id="a00190_html_ga8995c3a2214ee3e8a260e949bdd2c5f4"><divclass="ttname"><ahref="a00190.html#ga8995c3a2214ee3e8a260e949bdd2c5f4">glm::float3x2</a></div><divclass="ttdeci">detail::tmat3x2< float, highp > float3x2</div><divclass="ttdoc">single-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00131">compatibility.hpp:131</a></div></div>
<divclass="ttc"id="a00190_html_gabc7ad75cdfc0fa4249f38c059c6ebc8a"><divclass="ttname"><ahref="a00190.html#gabc7ad75cdfc0fa4249f38c059c6ebc8a">glm::bool4x3</a></div><divclass="ttdeci">detail::tmat4x3< bool, highp > bool4x3</div><divclass="ttdoc">boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00103">compatibility.hpp:103</a></div></div>
<divclass="ttc"id="a00190_html_ga72065e0692bfcc6c6faeed21c236e945"><divclass="ttname"><ahref="a00190.html#ga72065e0692bfcc6c6faeed21c236e945">glm::float2x3</a></div><divclass="ttdeci">detail::tmat2x3< float, highp > float2x3</div><divclass="ttdoc">single-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00129">compatibility.hpp:129</a></div></div>
<divclass="ttc"id="a00179_html_ga7468a211a20ea56ea5cfb0625226868a"><divclass="ttname"><ahref="a00179.html#ga7468a211a20ea56ea5cfb0625226868a">glm::slerp</a></div><divclass="ttdeci">GLM_FUNC_DECL detail::tquat< T, P > slerp(detail::tquat< T, P > const &x, detail::tquat< T, P > const &y, T const &a)</div><divclass="ttdoc">Spherical linear interpolation of two quaternions. </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00073">compatibility.hpp:73</a></div></div>
<divclass="ttc"id="a00155_html_ga72e9e213c84f06a329a2a838b51200f4"><divclass="ttname"><ahref="a00155.html#ga72e9e213c84f06a329a2a838b51200f4">glm::clamp</a></div><divclass="ttdeci">GLM_FUNC_DECL genType clamp(genType const &x, genType const &minVal, genType const &maxVal)</div><divclass="ttdoc">Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...</div></div>
<divclass="ttc"id="a00190_html_gaa48ec7c580ecdd0ce1ab56fd18deaff0"><divclass="ttname"><ahref="a00190.html#gaa48ec7c580ecdd0ce1ab56fd18deaff0">glm::int3x2</a></div><divclass="ttdeci">detail::tmat3x2< int, highp > int3x2</div><divclass="ttdoc">integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00115">compatibility.hpp:115</a></div></div>
<divclass="ttc"id="a00190_html_ga7292b675f4c2c11721df3cb458e71a92"><divclass="ttname"><ahref="a00190.html#ga7292b675f4c2c11721df3cb458e71a92">glm::bool2x2</a></div><divclass="ttdeci">detail::tmat2x2< bool, highp > bool2x2</div><divclass="ttdoc">boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00096">compatibility.hpp:96</a></div></div>
<divclass="ttc"id="a00190_html_ga0090698eeb1172816490270043890807"><divclass="ttname"><ahref="a00190.html#ga0090698eeb1172816490270043890807">glm::float4x4</a></div><divclass="ttdeci">detail::tmat4x4< float, highp > float4x4</div><divclass="ttdoc">single-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00136">compatibility.hpp:136</a></div></div>
<divclass="ttc"id="a00190_html_ga115efb84b7eb8b3c4cbeddd3437f9273"><divclass="ttname"><ahref="a00190.html#ga115efb84b7eb8b3c4cbeddd3437f9273">glm::float4x2</a></div><divclass="ttdeci">detail::tmat4x2< float, highp > float4x2</div><divclass="ttdoc">single-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00134">compatibility.hpp:134</a></div></div>
<divclass="ttc"id="a00190_html_ga39d6ffe6d42d4ec33036e735d7c39781"><divclass="ttname"><ahref="a00190.html#ga39d6ffe6d42d4ec33036e735d7c39781">glm::isfinite</a></div><divclass="ttdeci">bool isfinite(genType const &x)</div><divclass="ttdoc">Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility)...</div></div>
<divclass="ttc"id="a00190_html_gac8e6daf24e1b0c6e077c1b08aa692a82"><divclass="ttname"><ahref="a00190.html#gac8e6daf24e1b0c6e077c1b08aa692a82">glm::float3x4</a></div><divclass="ttdeci">detail::tmat3x4< float, highp > float3x4</div><divclass="ttdoc">single-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) ...</div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00133">compatibility.hpp:133</a></div></div>
<divclass="ttc"id="a00190_html_gaa588ccbc1faebb98af90feb87f800400"><divclass="ttname"><ahref="a00190.html#gaa588ccbc1faebb98af90feb87f800400">glm::bool2</a></div><divclass="ttdeci">detail::tvec2< bool, highp > bool2</div><divclass="ttdoc">boolean type with 2 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00091">compatibility.hpp:91</a></div></div>
<divclass="ttc"id="a00190_html_ga496949bee850ec0cff875c17a9335033"><divclass="ttname"><ahref="a00190.html#ga496949bee850ec0cff875c17a9335033">glm::bool2x4</a></div><divclass="ttdeci">detail::tmat2x4< bool, highp > bool2x4</div><divclass="ttdoc">boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) </div><divclass="ttdef"><b>Definition:</b><ahref="a00017_source.html#l00098">compatibility.hpp:98</a></div></div>