<!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.5"/> <title>Eigen: QuaternionBase< Derived > Class Template Reference</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="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); $(window).load(resizeHeight); </script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/search.js"></script> <script type="text/javascript"> $(document).ready(function() { searchBox.OnSelectItem(0); }); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="eigendoxy.css" rel="stylesheet" type="text/css"> <!-- --> <script type="text/javascript" src="eigen_navtree_hacks.js"></script> <!-- <script type="text/javascript"> --> <!-- </script> --> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <!-- <a name="top"></a> --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectlogo"><img alt="Logo" src="Eigen_Silly_Professor_64x64.png"/></td> <td style="padding-left: 0.5em;"> <div id="projectname"><a href="http://eigen.tuxfamily.org">Eigen</a>  <span id="projectnumber">3.2.0</span> </div> </td> <td> <div id="MSearchBox" class="MSearchBoxInactive"> <span class="left"> <img id="MSearchSelect" src="search/mag_sel.png" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" alt=""/> <input type="text" id="MSearchField" value="Search" accesskey="S" onfocus="searchBox.OnSearchFieldFocus(true)" onblur="searchBox.OnSearchFieldFocus(false)" onkeyup="searchBox.OnSearchFieldChange(event)"/> </span><span class="right"> <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> </span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.5 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('classEigen_1_1QuaternionBase.html','');}); </script> <div id="doc-content"> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> <a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Pages</a></div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> <div class="header"> <div class="summary"> <a href="classEigen_1_1QuaternionBase-members.html">List of all members</a> | <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pub-static-methods">Static Public Member Functions</a> </div> <div class="headertitle"> <div class="title">QuaternionBase< Derived > Class Template Reference<div class="ingroups"><a class="el" href="group__Geometry__Module.html">Geometry module</a></div></div> </div> </div><!--header--> <div class="contents"> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename Derived><br/> class Eigen::QuaternionBase< Derived ></h3> <p>Base class for quaternion expressions. </p> <p>This is defined in the Geometry module.</p> <div class="fragment"><div class="line"><span class="preprocessor">#include <Eigen/Geometry></span> </div> </div><!-- fragment --><dl class="tparams"><dt>Template Parameters</dt><dd> <table class="tparams"> <tr><td class="paramname">Derived</td><td>derived type (CRTP) </td></tr> </table> </dd> </dl> <dl class="section see"><dt>See Also</dt><dd>class <a class="el" href="classEigen_1_1Quaternion.html" title="The quaternion class used to represent 3D orientations and rotations. ">Quaternion</a> </dd></dl> </div><div id="dynsection-0" onclick="return toggleVisibility(this)" class="dynheader closed" style="cursor:pointer;"> <img id="dynsection-0-trigger" src="closed.png" alt="+"/> Inheritance diagram for QuaternionBase< Derived >:</div> <div id="dynsection-0-summary" class="dynsummary" style="display:block;"> </div> <div id="dynsection-0-content" class="dyncontent" style="display:none;"> <div class="center"><img src="classEigen_1_1QuaternionBase__inherit__graph.png" border="0" usemap="#QuaternionBase_3_01Derived_01_4_inherit__map" alt="Inheritance graph"/></div> <map name="QuaternionBase_3_01Derived_01_4_inherit__map" id="QuaternionBase_3_01Derived_01_4_inherit__map"> <area shape="rect" id="node2" href="classEigen_1_1RotationBase.html" title="{RotationBase\< Derived, 3 \>\n||+ _transformVector()\l+ derived()\l+ derived()\l+ inverse()\l+ matrix()\l+ operator*()\l+ operator*()\l+ operator*()\l+ operator*()\l+ toRotationMatrix()\l}" alt="" coords="5,6,189,215"/></map> </div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:ac8cbb66bbccf5f2c9596004a14129c26"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classEigen_1_1AngleAxis.html">AngleAxis</a>< Scalar > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ac8cbb66bbccf5f2c9596004a14129c26">AngleAxisType</a></td></tr> <tr class="separator:ac8cbb66bbccf5f2c9596004a14129c26"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abdb0743d0fe840b927780b2bd78fb29e"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a>< Scalar, 3, 3 > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#abdb0743d0fe840b927780b2bd78fb29e">Matrix3</a></td></tr> <tr class="separator:abdb0743d0fe840b927780b2bd78fb29e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abb59a4f54aebad6325389d49d48de310"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a>< Scalar, Dim, Dim > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a></td></tr> <tr class="separator:abb59a4f54aebad6325389d49d48de310"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab05eeebdd63f50a52fecb6353018075f"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a>< Scalar, 3, 1 > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a></td></tr> <tr class="separator:ab05eeebdd63f50a52fecb6353018075f"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ab45aef6f20921b0997f4e8d75ef03300"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ab45aef6f20921b0997f4e8d75ef03300">_transformVector</a> (<a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a> v) const </td></tr> <tr class="separator:ab45aef6f20921b0997f4e8d75ef03300"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab769d24022d1b0045cc8071f7b55861e"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:ab769d24022d1b0045cc8071f7b55861e"><td class="memTemplItemLeft" align="right" valign="top">internal::traits< Derived >::Scalar </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ab769d24022d1b0045cc8071f7b55861e">angularDistance</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:ab769d24022d1b0045cc8071f7b55861e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a65f6d2422debd1a64a2452641497e2f4"><td class="memTemplParams" colspan="2">template<typename NewScalarType > </td></tr> <tr class="memitem:a65f6d2422debd1a64a2452641497e2f4"><td class="memTemplItemLeft" align="right" valign="top">internal::cast_return_type<br class="typebreak"/> < Derived, <a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><br class="typebreak"/> < NewScalarType > >::type </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a65f6d2422debd1a64a2452641497e2f4">cast</a> () const </td></tr> <tr class="separator:a65f6d2422debd1a64a2452641497e2f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a316774ca4ac3e8d56a7e24e5e0ad8cc4"><td class="memItemLeft" align="right" valign="top">const internal::traits<br class="typebreak"/> < Derived >::Coefficients & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a316774ca4ac3e8d56a7e24e5e0ad8cc4">coeffs</a> () const </td></tr> <tr class="separator:a316774ca4ac3e8d56a7e24e5e0ad8cc4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a33e390da91b3c4f42c2e7330c0a5338b"><td class="memItemLeft" align="right" valign="top">internal::traits< Derived ><br class="typebreak"/> ::Coefficients & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a33e390da91b3c4f42c2e7330c0a5338b">coeffs</a> ()</td></tr> <tr class="separator:a33e390da91b3c4f42c2e7330c0a5338b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a6761d13accfe34e38d907505221d081c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< Scalar > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a6761d13accfe34e38d907505221d081c">conjugate</a> () const </td></tr> <tr class="separator:a6761d13accfe34e38d907505221d081c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a20b9b376e143961250055470585ac1d0"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:a20b9b376e143961250055470585ac1d0"><td class="memTemplItemLeft" align="right" valign="top">Scalar </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a20b9b376e143961250055470585ac1d0">dot</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:a20b9b376e143961250055470585ac1d0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a666e60218567ecf0ec8e2cd5040e1d87"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< Scalar > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a666e60218567ecf0ec8e2cd5040e1d87">inverse</a> () const </td></tr> <tr class="separator:a666e60218567ecf0ec8e2cd5040e1d87"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a3956cb2fddca9905ac6ed71a42ee2d2a"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:a3956cb2fddca9905ac6ed71a42ee2d2a"><td class="memTemplItemLeft" align="right" valign="top">bool </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a3956cb2fddca9905ac6ed71a42ee2d2a">isApprox</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other, const RealScalar &prec=<a class="el" href="structEigen_1_1NumTraits.html">NumTraits</a>< Scalar >::dummy_precision()) const </td></tr> <tr class="separator:a3956cb2fddca9905ac6ed71a42ee2d2a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a137458fc1a96a26c9fd58d7b2b61336d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#a137458fc1a96a26c9fd58d7b2b61336d">matrix</a> () const</td></tr> <tr class="separator:a137458fc1a96a26c9fd58d7b2b61336d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa2bb33b2ed836350b02a6b9083bf8b5b"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#aa2bb33b2ed836350b02a6b9083bf8b5b">norm</a> () const </td></tr> <tr class="separator:aa2bb33b2ed836350b02a6b9083bf8b5b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acd0de676568888d848beb97dcc53ae47"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#acd0de676568888d848beb97dcc53ae47">normalize</a> ()</td></tr> <tr class="separator:acd0de676568888d848beb97dcc53ae47"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4b12380cc06df343c220d0745b50759e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< Scalar > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a4b12380cc06df343c220d0745b50759e">normalized</a> () const </td></tr> <tr class="separator:a4b12380cc06df343c220d0745b50759e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a39e946f5ec63f80d28cf7988e6ba80b9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Transform.html">Transform</a>< Scalar, Dim, <a class="el" href="group__enums.html#gga302a826315506a7217d4b477ea78425fac6ccc3814bb6d2a8bf7f75d7131c6b17">Isometry</a> > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#a39e946f5ec63f80d28cf7988e6ba80b9">operator*</a> (const <a class="el" href="classEigen_1_1Translation.html">Translation</a>< Scalar, Dim > &t) const</td></tr> <tr class="separator:a39e946f5ec63f80d28cf7988e6ba80b9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a84d2f46dbcd54e3a3b8ebcc673ad3920"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#a84d2f46dbcd54e3a3b8ebcc673ad3920">operator*</a> (const UniformScaling< Scalar > &s) const</td></tr> <tr class="separator:a84d2f46dbcd54e3a3b8ebcc673ad3920"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:acd4f0475d084e54c0dde2ef3f78822c0"><td class="memItemLeft" align="right" valign="top">internal::rotation_base_generic_product_selector<br class="typebreak"/> < Derived, OtherDerived, <br class="typebreak"/> OtherDerived::IsVectorAtCompileTime ><br class="typebreak"/> ::ReturnType </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#acd4f0475d084e54c0dde2ef3f78822c0">operator*</a> (const <a class="el" href="structEigen_1_1EigenBase.html">EigenBase</a>< OtherDerived > &e) const</td></tr> <tr class="separator:acd4f0475d084e54c0dde2ef3f78822c0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a4905e372221a7ca6eaf7f11056bc1b7a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Transform.html">Transform</a>< Scalar, Dim, Mode > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1RotationBase.html#a4905e372221a7ca6eaf7f11056bc1b7a">operator*</a> (const <a class="el" href="classEigen_1_1Transform.html">Transform</a>< Scalar, Dim, Mode, Options > &t) const</td></tr> <tr class="separator:a4905e372221a7ca6eaf7f11056bc1b7a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abcbdbe1d235761acf941c7f1d29704d2"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:abcbdbe1d235761acf941c7f1d29704d2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< typename <br class="typebreak"/> internal::traits< Derived ><br class="typebreak"/> ::Scalar > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#abcbdbe1d235761acf941c7f1d29704d2">operator*</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:abcbdbe1d235761acf941c7f1d29704d2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa76d91cad6945c0d8f57d11289b3e8c2"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:aa76d91cad6945c0d8f57d11289b3e8c2"><td class="memTemplItemLeft" align="right" valign="top">Derived & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#aa76d91cad6945c0d8f57d11289b3e8c2">operator*=</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &q)</td></tr> <tr class="separator:aa76d91cad6945c0d8f57d11289b3e8c2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8ffbc66c68cc438bbf5cb0caa50598f5"><td class="memItemLeft" align="right" valign="top">Derived & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a8ffbc66c68cc438bbf5cb0caa50598f5">operator=</a> (const <a class="el" href="classEigen_1_1QuaternionBase.html#ac8cbb66bbccf5f2c9596004a14129c26">AngleAxisType</a> &aa)</td></tr> <tr class="separator:a8ffbc66c68cc438bbf5cb0caa50598f5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a320e5057b6f2d1dcdd4d6438c0c2036c"><td class="memTemplParams" colspan="2">template<class MatrixDerived > </td></tr> <tr class="memitem:a320e5057b6f2d1dcdd4d6438c0c2036c"><td class="memTemplItemLeft" align="right" valign="top">Derived & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a320e5057b6f2d1dcdd4d6438c0c2036c">operator=</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< MatrixDerived > &xpr)</td></tr> <tr class="separator:a320e5057b6f2d1dcdd4d6438c0c2036c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac35460294d855096e9b687cadf821452"><td class="memTemplParams" colspan="2">template<typename Derived1 , typename Derived2 > </td></tr> <tr class="memitem:ac35460294d855096e9b687cadf821452"><td class="memTemplItemLeft" align="right" valign="top">Derived & </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ac35460294d855096e9b687cadf821452">setFromTwoVectors</a> (const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Derived1 > &a, const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Derived2 > &b)</td></tr> <tr class="separator:ac35460294d855096e9b687cadf821452"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa07f38d31b32610f5296f81d438b60fb"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a> & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#aa07f38d31b32610f5296f81d438b60fb">setIdentity</a> ()</td></tr> <tr class="separator:aa07f38d31b32610f5296f81d438b60fb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8cf5be4be8788856ca8dfe97b3cde1c4"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:a8cf5be4be8788856ca8dfe97b3cde1c4"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< Scalar > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a8cf5be4be8788856ca8dfe97b3cde1c4">slerp</a> (const Scalar &t, const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:a8cf5be4be8788856ca8dfe97b3cde1c4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa29a81b780c3012d0fd126a4525781c2"><td class="memTemplParams" colspan="2">template<class OtherDerived > </td></tr> <tr class="memitem:aa29a81b780c3012d0fd126a4525781c2"><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< typename <br class="typebreak"/> internal::traits< Derived ><br class="typebreak"/> ::Scalar > </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#aa29a81b780c3012d0fd126a4525781c2">slerp</a> (const Scalar &t, const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > &other) const </td></tr> <tr class="separator:aa29a81b780c3012d0fd126a4525781c2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8699d72c996ca6cb4673e810fe3a616c"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a8699d72c996ca6cb4673e810fe3a616c">squaredNorm</a> () const </td></tr> <tr class="separator:a8699d72c996ca6cb4673e810fe3a616c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7bdc6d3cce92c44d32281aa2f85b56f7"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1QuaternionBase.html#abdb0743d0fe840b927780b2bd78fb29e">Matrix3</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a7bdc6d3cce92c44d32281aa2f85b56f7">toRotationMatrix</a> () const </td></tr> <tr class="separator:a7bdc6d3cce92c44d32281aa2f85b56f7"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a154f40d7fec7be85112f7e7c12e4900b"><td class="memItemLeft" align="right" valign="top">const <a class="el" href="classEigen_1_1VectorBlock.html">VectorBlock</a>< const <br class="typebreak"/> Coefficients, 3 > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a154f40d7fec7be85112f7e7c12e4900b">vec</a> () const </td></tr> <tr class="separator:a154f40d7fec7be85112f7e7c12e4900b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5a8ee232e99cf184e74c6a8dfab5d43e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classEigen_1_1VectorBlock.html">VectorBlock</a>< Coefficients, 3 > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a5a8ee232e99cf184e74c6a8dfab5d43e">vec</a> ()</td></tr> <tr class="separator:a5a8ee232e99cf184e74c6a8dfab5d43e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae11dcbf26de9bc8c2afddf9a8b5c32a9"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ae11dcbf26de9bc8c2afddf9a8b5c32a9">w</a> () const </td></tr> <tr class="separator:ae11dcbf26de9bc8c2afddf9a8b5c32a9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81f3d09a835c62dbde6a0824f5db517b"><td class="memItemLeft" align="right" valign="top">Scalar & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a81f3d09a835c62dbde6a0824f5db517b">w</a> ()</td></tr> <tr class="separator:a81f3d09a835c62dbde6a0824f5db517b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5eb2596dc2a509b276d01578a9c3dd27"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a5eb2596dc2a509b276d01578a9c3dd27">x</a> () const </td></tr> <tr class="separator:a5eb2596dc2a509b276d01578a9c3dd27"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5e6fc074bced85f298c76edac1af6cd9"><td class="memItemLeft" align="right" valign="top">Scalar & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a5e6fc074bced85f298c76edac1af6cd9">x</a> ()</td></tr> <tr class="separator:a5e6fc074bced85f298c76edac1af6cd9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a7b19faa70d70b5f16a39f1dd4b69e7a0"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a7b19faa70d70b5f16a39f1dd4b69e7a0">y</a> () const </td></tr> <tr class="separator:a7b19faa70d70b5f16a39f1dd4b69e7a0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad948bb3bd6866bdca15149880c34be62"><td class="memItemLeft" align="right" valign="top">Scalar & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#ad948bb3bd6866bdca15149880c34be62">y</a> ()</td></tr> <tr class="separator:ad948bb3bd6866bdca15149880c34be62"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a94a075384f8f54dc97a69546e600b78e"><td class="memItemLeft" align="right" valign="top">Scalar </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a94a075384f8f54dc97a69546e600b78e">z</a> () const </td></tr> <tr class="separator:a94a075384f8f54dc97a69546e600b78e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1abcf9e222c8e5c38cf63f6821cd6480"><td class="memItemLeft" align="right" valign="top">Scalar & </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a1abcf9e222c8e5c38cf63f6821cd6480">z</a> ()</td></tr> <tr class="separator:a1abcf9e222c8e5c38cf63f6821cd6480"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a> Static Public Member Functions</h2></td></tr> <tr class="memitem:a480a9376ddbb4d075331a3cefca97bc7"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< Scalar > </td><td class="memItemRight" valign="bottom"><a class="el" href="classEigen_1_1QuaternionBase.html#a480a9376ddbb4d075331a3cefca97bc7">Identity</a> ()</td></tr> <tr class="separator:a480a9376ddbb4d075331a3cefca97bc7"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Member Typedef Documentation</h2> <a class="anchor" id="ac8cbb66bbccf5f2c9596004a14129c26"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classEigen_1_1AngleAxis.html">AngleAxis</a><Scalar> <a class="el" href="classEigen_1_1QuaternionBase.html#ac8cbb66bbccf5f2c9596004a14129c26">AngleAxisType</a></td> </tr> </table> </div><div class="memdoc"> <p>the equivalent angle-axis type </p> </div> </div> <a class="anchor" id="abdb0743d0fe840b927780b2bd78fb29e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a><Scalar,3,3> <a class="el" href="classEigen_1_1QuaternionBase.html#abdb0743d0fe840b927780b2bd78fb29e">Matrix3</a></td> </tr> </table> </div><div class="memdoc"> <p>the equivalent rotation matrix type </p> </div> </div> <a class="anchor" id="abb59a4f54aebad6325389d49d48de310"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a><Scalar,Dim,Dim> <a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>corresponding linear transformation matrix type </p> </div> </div> <a class="anchor" id="ab05eeebdd63f50a52fecb6353018075f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">typedef <a class="el" href="classEigen_1_1Matrix.html">Matrix</a><Scalar,3,1> <a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a></td> </tr> </table> </div><div class="memdoc"> <p>the type of a 3D vector </p> </div> </div> <h2 class="groupheader">Member Function Documentation</h2> <a class="anchor" id="ab45aef6f20921b0997f4e8d75ef03300"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< Derived >::<a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a> _transformVector </td> <td>(</td> <td class="paramtype"><a class="el" href="classEigen_1_1QuaternionBase.html#ab05eeebdd63f50a52fecb6353018075f">Vector3</a> </td> <td class="paramname"><em>v</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>return the result vector of <em>v</em> through the rotation</p> <p>Rotation of a vector by a quaternion. </p> <dl class="section remark"><dt>Remarks</dt><dd>If the quaternion is used to rotate several points (>1) then it is much more efficient to first convert it to a 3x3 <a class="el" href="classEigen_1_1Matrix.html" title="The matrix class, also used for vectors and row-vectors. ">Matrix</a>. Comparison of the operation cost for n transformations:<ul> <li>Quaternion2: 30n</li> <li>Via a Matrix3: 24 + 15n </li> </ul> </dd></dl> </div> </div> <a class="anchor" id="ab769d24022d1b0045cc8071f7b55861e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">internal::traits<Derived>::Scalar angularDistance </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the angle (in radian) between two rotations </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#a20b9b376e143961250055470585ac1d0">dot()</a> </dd></dl> </div> </div> <a class="anchor" id="a65f6d2422debd1a64a2452641497e2f4"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">internal::cast_return_type<Derived,<a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><NewScalarType> >::type cast </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd><code>*this</code> with scalar type casted to <em>NewScalarType</em> </dd></dl> <p>Note that if <em>NewScalarType</em> is equal to the current scalar type of <code>*this</code> then this function smartly returns a const reference to <code>*this</code>. </p> </div> </div> <a class="anchor" id="a316774ca4ac3e8d56a7e24e5e0ad8cc4"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const internal::traits<Derived>::Coefficients& coeffs </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a read-only vector expression of the coefficients (x,y,z,w) </dd></dl> <p>Referenced by <a class="el" href="classEigen_1_1QuaternionBase.html#a20b9b376e143961250055470585ac1d0">QuaternionBase< Quaternion< _Scalar, _Options > >::dot()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#a3956cb2fddca9905ac6ed71a42ee2d2a">QuaternionBase< Quaternion< _Scalar, _Options > >::isApprox()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#aa2bb33b2ed836350b02a6b9083bf8b5b">QuaternionBase< Quaternion< _Scalar, _Options > >::norm()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#acd0de676568888d848beb97dcc53ae47">QuaternionBase< Quaternion< _Scalar, _Options > >::normalize()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#a4b12380cc06df343c220d0745b50759e">QuaternionBase< Quaternion< _Scalar, _Options > >::normalized()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#aa07f38d31b32610f5296f81d438b60fb">QuaternionBase< Quaternion< _Scalar, _Options > >::setIdentity()</a>, <a class="el" href="classEigen_1_1QuaternionBase.html#a8699d72c996ca6cb4673e810fe3a616c">QuaternionBase< Quaternion< _Scalar, _Options > >::squaredNorm()</a>, and <a class="el" href="classEigen_1_1QuaternionBase.html#a154f40d7fec7be85112f7e7c12e4900b">QuaternionBase< Quaternion< _Scalar, _Options > >::vec()</a>.</p> </div> </div> <a class="anchor" id="a33e390da91b3c4f42c2e7330c0a5338b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">internal::traits<Derived>::Coefficients& coeffs </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a vector expression of the coefficients (x,y,z,w) </dd></dl> </div> </div> <a class="anchor" id="a6761d13accfe34e38d907505221d081c"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< typename internal::traits< Derived >::Scalar > conjugate </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the conjugated quaternion</dd> <dd> the conjugate of the <code>*this</code> which is equal to the multiplicative inverse if the quaternion is normalized. The conjugate of a quaternion represents the opposite rotation.</dd></dl> <dl class="section see"><dt>See Also</dt><dd>Quaternion2::inverse() </dd></dl> </div> </div> <a class="anchor" id="a20b9b376e143961250055470585ac1d0"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar dot </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the dot product of <code>*this</code> and <em>other</em> Geometrically speaking, the dot product of two unit quaternions corresponds to the cosine of half the angle between the two rotations. </dd></dl> <dl class="section see"><dt>See Also</dt><dd>angularDistance() </dd></dl> </div> </div> <a class="anchor" id="a480a9376ddbb4d075331a3cefca97bc7"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static <a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><Scalar> Identity </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a quaternion representing an identity rotation </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1MatrixBase.html#a0650b65c6ae6c3d19a138b72a6d68568">MatrixBase::Identity()</a> </dd></dl> </div> </div> <a class="anchor" id="a666e60218567ecf0ec8e2cd5040e1d87"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a>< typename internal::traits< Derived >::Scalar > inverse </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the quaternion describing the inverse rotation</dd> <dd> the multiplicative inverse of <code>*this</code> Note that in most cases, i.e., if you simply want the opposite rotation, and/or the quaternion is normalized, then it is enough to use the conjugate.</dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#a6761d13accfe34e38d907505221d081c">QuaternionBase::conjugate()</a> </dd></dl> </div> </div> <a class="anchor" id="a3956cb2fddca9905ac6ed71a42ee2d2a"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">bool isApprox </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const RealScalar & </td> <td class="paramname"><em>prec</em> = <code><a class="el" href="structEigen_1_1NumTraits.html">NumTraits</a><Scalar>::dummy_precision()</code> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd><code>true</code> if <code>*this</code> is approximately equal to <em>other</em>, within the precision determined by <em>prec</em>.</dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1DenseBase.html#a158c2184951e6e415c2e9b98db8e8966">MatrixBase::isApprox()</a> </dd></dl> </div> </div> <a class="anchor" id="a137458fc1a96a26c9fd58d7b2b61336d"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a> matrix </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>an equivalent rotation matrix This function is added to be conform with the Transform class' naming scheme. </dd></dl> </div> </div> <a class="anchor" id="aa2bb33b2ed836350b02a6b9083bf8b5b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar norm </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the norm of the quaternion's coefficients </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#a8699d72c996ca6cb4673e810fe3a616c">QuaternionBase::squaredNorm()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#a0be1b433c65ce9d92c81a4718daf54e5">MatrixBase::norm()</a> </dd></dl> </div> </div> <a class="anchor" id="acd0de676568888d848beb97dcc53ae47"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">void normalize </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Normalizes the quaternion <code>*this</code> </p> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#a4b12380cc06df343c220d0745b50759e">normalized()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#acd0de676568888d848beb97dcc53ae47">MatrixBase::normalize()</a> </dd></dl> </div> </div> <a class="anchor" id="a4b12380cc06df343c220d0745b50759e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><Scalar> normalized </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a normalized copy of <code>*this</code> </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#acd0de676568888d848beb97dcc53ae47">normalize()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#a8ed1fb2e792b1079639a74e3581fbc74">MatrixBase::normalized()</a> </dd></dl> </div> </div> <a class="anchor" id="a39e946f5ec63f80d28cf7988e6ba80b9"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Transform.html">Transform</a><Scalar,Dim,<a class="el" href="group__enums.html#gga302a826315506a7217d4b477ea78425fac6ccc3814bb6d2a8bf7f75d7131c6b17">Isometry</a>> operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1Translation.html">Translation</a>< <a class="el" href="classEigen_1_1RotationBase.html#a844358c46408e878e60c4026c52eb1e9">Scalar</a>, Dim > & </td> <td class="paramname"><em>t</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the concatenation of the rotation <code>*this</code> with a translation <em>t</em> </dd></dl> </div> </div> <a class="anchor" id="a84d2f46dbcd54e3a3b8ebcc673ad3920"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1RotationBase.html#abb59a4f54aebad6325389d49d48de310">RotationMatrixType</a> operator* </td> <td>(</td> <td class="paramtype">const UniformScaling< <a class="el" href="classEigen_1_1RotationBase.html#a844358c46408e878e60c4026c52eb1e9">Scalar</a> > & </td> <td class="paramname"><em>s</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the concatenation of the rotation <code>*this</code> with a uniform scaling <em>s</em> </dd></dl> <p>References <a class="el" href="classEigen_1_1RotationBase.html#aeb3f061eb5a0f7a4509f69a7f2b9d226">RotationBase< Derived, _Dim >::toRotationMatrix()</a>.</p> </div> </div> <a class="anchor" id="acd4f0475d084e54c0dde2ef3f78822c0"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">internal::rotation_base_generic_product_selector<Derived,OtherDerived,OtherDerived::IsVectorAtCompileTime>::ReturnType operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="structEigen_1_1EigenBase.html">EigenBase</a>< OtherDerived > & </td> <td class="paramname"><em>e</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the concatenation of the rotation <code>*this</code> with a generic expression <em>e</em> <em>e</em> can be:<ul> <li>a DimxDim linear transformation matrix</li> <li>a DimxDim diagonal matrix (axis aligned scaling)</li> <li>a vector of size Dim </li> </ul> </dd></dl> <p>References <a class="el" href="structEigen_1_1EigenBase.html#aa84222add803ad7c9db07dd4dd91d5d9">EigenBase< Derived >::derived()</a>.</p> </div> </div> <a class="anchor" id="a4905e372221a7ca6eaf7f11056bc1b7a"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Transform.html">Transform</a><Scalar,Dim,Mode> operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1Transform.html">Transform</a>< <a class="el" href="classEigen_1_1RotationBase.html#a844358c46408e878e60c4026c52eb1e9">Scalar</a>, Dim, Mode, Options > & </td> <td class="paramname"><em>t</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">inherited</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the concatenation of the rotation <code>*this</code> with a transformation <em>t</em> </dd></dl> <p>References <a class="el" href="classEigen_1_1RotationBase.html#aeb3f061eb5a0f7a4509f69a7f2b9d226">RotationBase< Derived, _Dim >::toRotationMatrix()</a>.</p> </div> </div> <a class="anchor" id="abcbdbe1d235761acf941c7f1d29704d2"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><typename internal::traits<Derived>::Scalar> operator* </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the concatenation of two rotations as a quaternion-quaternion product </dd></dl> </div> </div> <a class="anchor" id="aa76d91cad6945c0d8f57d11289b3e8c2"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Derived & operator*= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd>operator*(Quaternion) </dd></dl> </div> </div> <a class="anchor" id="a8ffbc66c68cc438bbf5cb0caa50598f5"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Derived & operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html#ac8cbb66bbccf5f2c9596004a14129c26">AngleAxisType</a> & </td> <td class="paramname"><em>aa</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Set <code>*this</code> from an angle-axis <em>aa</em> and returns a reference to <code>*this</code> </p> </div> </div> <a class="anchor" id="a320e5057b6f2d1dcdd4d6438c0c2036c"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Derived& operator= </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< MatrixDerived > & </td> <td class="paramname"><em>xpr</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Set <code>*this</code> from the expression <em>xpr:</em> </p> <ul> <li>if <em>xpr</em> is a 4x1 vector, then <em>xpr</em> is assumed to be a quaternion</li> <li>if <em>xpr</em> is a 3x3 matrix, then <em>xpr</em> is assumed to be rotation matrix and <em>xpr</em> is converted to a quaternion </li> </ul> </div> </div> <a class="anchor" id="ac35460294d855096e9b687cadf821452"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Derived & setFromTwoVectors </td> <td>(</td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Derived1 > & </td> <td class="paramname"><em>a</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classEigen_1_1MatrixBase.html">MatrixBase</a>< Derived2 > & </td> <td class="paramname"><em>b</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the quaternion which transform <em>a</em> into <em>b</em> through a rotation</dd></dl> <p>Sets <code>*this</code> to be a quaternion representing a rotation between the two arbitrary vectors <em>a</em> and <em>b</em>. In other words, the built rotation represent a rotation sending the line of direction <em>a</em> to the line of direction <em>b</em>, both lines passing through the origin.</p> <dl class="section return"><dt>Returns</dt><dd>a reference to <code>*this</code>.</dd></dl> <p>Note that the two input vectors do <b>not</b> have to be normalized, and do not need to have the same norm. </p> <p>References <a class="el" href="group__enums.html#gga2d78499b99ddc29b9494f7ea33864d52a1785ac1174dab733556ac572448984c7">Eigen::ComputeFullV</a>, <a class="el" href="classEigen_1_1JacobiSVD.html#ae5158ab7ca44a705c2a3b56ec926b42a">JacobiSVD< MatrixType, QRPreconditioner >::matrixV()</a>, and <a class="el" href="classEigen_1_1MatrixBase.html#a8ed1fb2e792b1079639a74e3581fbc74">MatrixBase< Derived >::normalized()</a>.</p> </div> </div> <a class="anchor" id="aa07f38d31b32610f5296f81d438b60fb"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>& setIdentity </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#a480a9376ddbb4d075331a3cefca97bc7">QuaternionBase::Identity()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#af1b15ae4c6f69b7324dd8ef70089dfc3">MatrixBase::setIdentity()</a> </dd></dl> </div> </div> <a class="anchor" id="a8cf5be4be8788856ca8dfe97b3cde1c4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><Scalar> slerp </td> <td>(</td> <td class="paramtype">const Scalar & </td> <td class="paramname"><em>t</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>an interpolation for a constant motion between <em>other</em> and <code>*this</code> <em>t</em> in [0;1] see <a href="http://en.wikipedia.org/wiki/Slerp">http://en.wikipedia.org/wiki/Slerp</a> </dd></dl> </div> </div> <a class="anchor" id="aa29a81b780c3012d0fd126a4525781c2"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1Quaternion.html">Quaternion</a><typename internal::traits<Derived>::Scalar> slerp </td> <td>(</td> <td class="paramtype">const Scalar & </td> <td class="paramname"><em>t</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< OtherDerived > & </td> <td class="paramname"><em>other</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td> const</td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the spherical linear interpolation between the two quaternions <code>*this</code> and <em>other</em> at the parameter <em>t</em> </dd></dl> </div> </div> <a class="anchor" id="a8699d72c996ca6cb4673e810fe3a616c"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar squaredNorm </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the squared norm of the quaternion's coefficients </dd></dl> <dl class="section see"><dt>See Also</dt><dd><a class="el" href="classEigen_1_1QuaternionBase.html#aa2bb33b2ed836350b02a6b9083bf8b5b">QuaternionBase::norm()</a>, <a class="el" href="classEigen_1_1MatrixBase.html#a229bd5cc6237359a1d85401743476ede">MatrixBase::squaredNorm()</a> </dd></dl> </div> </div> <a class="anchor" id="a7bdc6d3cce92c44d32281aa2f85b56f7"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a>< Derived >::<a class="el" href="classEigen_1_1QuaternionBase.html#abdb0743d0fe840b927780b2bd78fb29e">Matrix3</a> toRotationMatrix </td> <td>(</td> <td class="paramtype">void </td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>an equivalent 3x3 rotation matrix</dd></dl> <p>Convert the quaternion to a 3x3 rotation matrix. The quaternion is required to be normalized, otherwise the result is undefined. </p> </div> </div> <a class="anchor" id="a154f40d7fec7be85112f7e7c12e4900b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">const <a class="el" href="classEigen_1_1VectorBlock.html">VectorBlock</a><const Coefficients,3> vec </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a read-only vector expression of the imaginary part (x,y,z) </dd></dl> <p>Referenced by <a class="el" href="classEigen_1_1AngleAxis.html#a9694b8b0ff05dc4673d64af0e566d9d9">AngleAxis< Scalar >::operator=()</a>.</p> </div> </div> <a class="anchor" id="a5a8ee232e99cf184e74c6a8dfab5d43e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classEigen_1_1VectorBlock.html">VectorBlock</a><Coefficients,3> vec </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a vector expression of the imaginary part (x,y,z) </dd></dl> </div> </div> <a class="anchor" id="ae11dcbf26de9bc8c2afddf9a8b5c32a9"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar w </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the <code>w</code> coefficient </dd></dl> <p>Referenced by <a class="el" href="classEigen_1_1AngleAxis.html#a9694b8b0ff05dc4673d64af0e566d9d9">AngleAxis< Scalar >::operator=()</a>.</p> </div> </div> <a class="anchor" id="a81f3d09a835c62dbde6a0824f5db517b"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar& w </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a reference to the <code>w</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="a5eb2596dc2a509b276d01578a9c3dd27"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar x </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the <code>x</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="a5e6fc074bced85f298c76edac1af6cd9"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar& x </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a reference to the <code>x</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="a7b19faa70d70b5f16a39f1dd4b69e7a0"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar y </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the <code>y</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="ad948bb3bd6866bdca15149880c34be62"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar& y </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a reference to the <code>y</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="a94a075384f8f54dc97a69546e600b78e"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar z </td> <td>(</td> <td class="paramname"></td><td>)</td> <td> const</td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>the <code>z</code> coefficient </dd></dl> </div> </div> <a class="anchor" id="a1abcf9e222c8e5c38cf63f6821cd6480"></a> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">Scalar& z </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="section return"><dt>Returns</dt><dd>a reference to the <code>z</code> coefficient </dd></dl> </div> </div> <hr/>The documentation for this class was generated from the following files:<ul> <li><a class="el" href="ForwardDeclarations_8h_source.html">ForwardDeclarations.h</a></li> <li><a class="el" href="Quaternion_8h_source.html">Quaternion.h</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="namespaceEigen.html">Eigen</a></li><li class="navelem"><a class="el" href="classEigen_1_1QuaternionBase.html">QuaternionBase</a></li> <li class="footer">Generated on Mon Oct 28 2013 11:04:30 for Eigen by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.5 </li> </ul> </div> <!-- Piwik --> <!-- <script type="text/javascript"> var pkBaseURL = (("https:" == document.location.protocol) ? "https://stats.sylphide-consulting.com/piwik/" : "http://stats.sylphide-consulting.com/piwik/"); document.write(unescape("%3Cscript src='" + pkBaseURL + "piwik.js' type='text/javascript'%3E%3C/script%3E")); </script><script type="text/javascript"> try { var piwikTracker = Piwik.getTracker(pkBaseURL + "piwik.php", 20); piwikTracker.trackPageView(); piwikTracker.enableLinkTracking(); } catch( err ) {} </script><noscript><p><img src="http://stats.sylphide-consulting.com/piwik/piwik.php?idsite=20" style="border:0" alt="" /></p></noscript> --> <!-- End Piwik Tracking Code --> </body> </html>