<!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.8: GLM_GTX_fast_square_root</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.8 </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 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_GTX_fast_square_root<div class="ingroups"><a class="el" href="a00155.html">GTX Extensions (Experimental)</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:gaac333418d0c4e0cc6d3d219ed606c238"><td class="memTemplParams" colspan="2">template<typename genType > </td></tr> <tr class="memitem:gaac333418d0c4e0cc6d3d219ed606c238"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#gaac333418d0c4e0cc6d3d219ed606c238">fastDistance</a> (genType x, genType y)</td></tr> <tr class="separator:gaac333418d0c4e0cc6d3d219ed606c238"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6d1ac559cd77d69119e30c3aca0e14b5"><td class="memTemplParams" colspan="2">template<typename T , precision P, template< typename, precision > class vecType> </td></tr> <tr class="memitem:ga6d1ac559cd77d69119e30c3aca0e14b5"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#ga6d1ac559cd77d69119e30c3aca0e14b5">fastDistance</a> (vecType< T, P > const &x, vecType< T, P > const &y)</td></tr> <tr class="separator:ga6d1ac559cd77d69119e30c3aca0e14b5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga7f081b14d9c7035c8714eba5f7f75a8f"><td class="memTemplParams" colspan="2">template<typename genType > </td></tr> <tr class="memitem:ga7f081b14d9c7035c8714eba5f7f75a8f"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#ga7f081b14d9c7035c8714eba5f7f75a8f">fastInverseSqrt</a> (genType x)</td></tr> <tr class="separator:ga7f081b14d9c7035c8714eba5f7f75a8f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga903878071f92e51e551791e584a171a1"><td class="memTemplParams" colspan="2">template<typename T , precision P, template< typename, precision > class vecType> </td></tr> <tr class="memitem:ga903878071f92e51e551791e584a171a1"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vecType< T, P > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#ga903878071f92e51e551791e584a171a1">fastInverseSqrt</a> (vecType< T, P > const &x)</td></tr> <tr class="separator:ga903878071f92e51e551791e584a171a1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafe697d6287719538346bbdf8b1367c59"><td class="memTemplParams" colspan="2">template<typename genType > </td></tr> <tr class="memitem:gafe697d6287719538346bbdf8b1367c59"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#gafe697d6287719538346bbdf8b1367c59">fastLength</a> (genType x)</td></tr> <tr class="separator:gafe697d6287719538346bbdf8b1367c59"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae28a3099cbd6404a4ea8ef22147ed7b0"><td class="memTemplParams" colspan="2">template<typename T , precision P, template< typename, precision > class vecType> </td></tr> <tr class="memitem:gae28a3099cbd6404a4ea8ef22147ed7b0"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL T </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#gae28a3099cbd6404a4ea8ef22147ed7b0">fastLength</a> (vecType< T, P > const &x)</td></tr> <tr class="separator:gae28a3099cbd6404a4ea8ef22147ed7b0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga3b02c1d6e0c754144e2f1e110bf9f16c"><td class="memTemplParams" colspan="2">template<typename genType > </td></tr> <tr class="memitem:ga3b02c1d6e0c754144e2f1e110bf9f16c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#ga3b02c1d6e0c754144e2f1e110bf9f16c">fastNormalize</a> (genType const &x)</td></tr> <tr class="separator:ga3b02c1d6e0c754144e2f1e110bf9f16c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6c460e9414a50b2fc455c8f64c86cdc9"><td class="memTemplParams" colspan="2">template<typename genType > </td></tr> <tr class="memitem:ga6c460e9414a50b2fc455c8f64c86cdc9"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL genType </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#ga6c460e9414a50b2fc455c8f64c86cdc9">fastSqrt</a> (genType x)</td></tr> <tr class="separator:ga6c460e9414a50b2fc455c8f64c86cdc9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaad9f601bbc3faa04dda384e4c4e1592c"><td class="memTemplParams" colspan="2">template<typename T , precision P, template< typename, precision > class vecType> </td></tr> <tr class="memitem:gaad9f601bbc3faa04dda384e4c4e1592c"><td class="memTemplItemLeft" align="right" valign="top">GLM_FUNC_DECL vecType< T, P > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a00194.html#gaad9f601bbc3faa04dda384e4c4e1592c">fastSqrt</a> (vecType< T, P > const &x)</td></tr> <tr class="separator:gaad9f601bbc3faa04dda384e4c4e1592c"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <p>Fast but less accurate implementations of square root based functions. </p> <ul> <li>Sqrt optimisation based on Newton's method, www.gamedev.net/community/forums/topic.asp?topic id=139956</li> </ul> <p><<a class="el" href="a00027.html" title="GLM_GTX_fast_square_root ">glm/gtx/fast_square_root.hpp</a>> need to be included to use these functionalities. </p> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="gaac333418d0c4e0cc6d3d219ed606c238"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL genType glm::fastDistance </td> <td>(</td> <td class="paramtype">genType </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">genType </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common distance function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="ga6d1ac559cd77d69119e30c3aca0e14b5"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL T glm::fastDistance </td> <td>(</td> <td class="paramtype">vecType< T, P > const & </td> <td class="paramname"><em>x</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">vecType< T, P > const & </td> <td class="paramname"><em>y</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common distance function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="ga7f081b14d9c7035c8714eba5f7f75a8f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL genType glm::fastInverseSqrt </td> <td>(</td> <td class="paramtype">genType </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common inversesqrt function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="ga903878071f92e51e551791e584a171a1"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL vecType<T, P> glm::fastInverseSqrt </td> <td>(</td> <td class="paramtype">vecType< T, P > const & </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common inversesqrt function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="gafe697d6287719538346bbdf8b1367c59"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL genType glm::fastLength </td> <td>(</td> <td class="paramtype">genType </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common length function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="gae28a3099cbd6404a4ea8ef22147ed7b0"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL T glm::fastLength </td> <td>(</td> <td class="paramtype">vecType< T, P > const & </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common length function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="ga3b02c1d6e0c754144e2f1e110bf9f16c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL genType glm::fastNormalize </td> <td>(</td> <td class="paramtype">genType const & </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common normalize function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="ga6c460e9414a50b2fc455c8f64c86cdc9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL genType glm::fastSqrt </td> <td>(</td> <td class="paramtype">genType </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common sqrt function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> <a class="anchor" id="gaad9f601bbc3faa04dda384e4c4e1592c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">GLM_FUNC_DECL vecType<T, P> glm::fastSqrt </td> <td>(</td> <td class="paramtype">vecType< T, P > const & </td> <td class="paramname"><em>x</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Faster than the common sqrt function but less accurate. </p> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00194.html" title="Fast but less accurate implementations of square root based functions. ">GLM_GTX_fast_square_root</a> extension. </dd></dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.10 </small></address> </body> </html>