Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > 4bc66056a634db26a1f4d0845dc41ca6 > files > 3156

mrpt-doc-0.9.5-0.1.20110925svn2670.fc16.i686.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>Eigen::Hyperplane Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<div align="left"><a href="http://www.mrpt.org/">Main MRPT website</a> &gt; <b>C++ reference</b> </div>
<div align="right">
<a href="index.html"><img border="0" src="mrpt_logo.png" alt="MRPT logo"></a>
</div>
<!-- Generated by Doxygen 1.7.5 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
          <div class="left">
            <form id="FSearchBox" action="search.php" method="get">
              <img id="MSearchSelect" src="search/mag.png" alt=""/>
              <input type="text" id="MSearchField" name="query" value="Search" size="20" accesskey="S" 
                     onfocus="searchBox.OnSearchFieldFocus(true)" 
                     onblur="searchBox.OnSearchFieldFocus(false)"/>
            </form>
          </div><div class="right"></div>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
      <li><a href="classes.html"><span>Class&#160;Index</span></a></li>
      <li><a href="inherits.html"><span>Class&#160;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&#160;Members</span></a></li>
    </ul>
  </div>
  <div id="nav-path" class="navpath">
    <ul>
      <li class="navelem"><a class="el" href="namespace_eigen.html">Eigen</a>      </li>
      <li class="navelem"><a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>      </li>
    </ul>
  </div>
</div>
<div class="header">
  <div class="summary">
<a href="#pub-types">Public Types</a> &#124;
<a href="#pub-methods">Public Member Functions</a> &#124;
<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
<a href="#pro-attribs">Protected Attributes</a>  </div>
  <div class="headertitle">
<div class="title">Eigen::Hyperplane Class Reference<div class="ingroups"><a class="el" href="group___geometry___module.html">Geometry module</a></div></div>  </div>
</div>
<div class="contents">
<!-- doxytag: class="Eigen::Hyperplane" --><hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
<div class="textblock"><p>A hyperplane</p>
<p>A hyperplane is an affine subspace of dimension n-1 in a space of dimension n. For example, a hyperplane in a plane is a line; a hyperplane in 3-space is a plane.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">_Scalar</td><td>the scalar type, i.e., the type of the coefficients </td></tr>
    <tr><td class="paramname">_AmbientDim</td><td>the dimension of the ambient space, can be a compile time value or Dynamic. Notice that the dimension of the hyperplane is _AmbientDim-1.</td></tr>
  </table>
  </dd>
</dl>
<p>This class represents an hyperplane as the zero set of the implicit equation <img class="formulaInl" alt="$ n \cdot x + d = 0 $" src="form_217.png"/> where <img class="formulaInl" alt="$ n $" src="form_183.png"/> is a unit normal vector of the plane (linear part) and <img class="formulaInl" alt="$ d $" src="form_218.png"/> is the distance (offset) to the origin. </p>
</div>
<p><a href="class_eigen_1_1_hyperplane-members.html">List of all members.</a></p>
<table class="memberdecls">
<tr><td colspan="2"><h2><a name="pub-types"></a>
Public Types</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">enum &#160;</td><td class="memItemRight" valign="bottom">{ <a class="el" href="class_eigen_1_1_hyperplane.html#a8f8ea81f51e47e98fd9fe959d11e5961a0e4e05f9e3ed86757ccc7964bd845f2d">AmbientDimAtCompileTime</a> =  _AmbientDim, 
<a class="el" href="class_eigen_1_1_hyperplane.html#a8f8ea81f51e47e98fd9fe959d11e5961a20f7fef933f07e78abfcdac7b6efd885">Options</a> =  _Options
 }</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef _Scalar&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &gt;::Real&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#af9f78905753c61f9fcfdde4cca6b5f47">RealScalar</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="namespace_eigen.html#aa06499c94936a19673e53deb516a1b76">DenseIndex</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, <br class="typebreak"/>
AmbientDimAtCompileTime, 1 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, <a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a>(AmbientDimAtCompileTime)==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a>?Dynamic:Index(AmbientDimAtCompileTime)+1, <br class="typebreak"/>
1, Options &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="class_eigen_1_1_block.html">Block</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>, <br class="typebreak"/>
AmbientDimAtCompileTime, 1 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ab8552039bed6fc9d153fe8cb39cd913d">NormalReturnType</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">typedef const <a class="el" href="class_eigen_1_1_block.html">Block</a>&lt; const <br class="typebreak"/>
<a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>, <br class="typebreak"/>
AmbientDimAtCompileTime, 1 &gt;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a629047ccdd28e7c175d6d8f2d0312132">ConstNormalReturnType</a></td></tr>
<tr><td colspan="2"><h2><a name="pub-methods"></a>
Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a1359e8b3261f1995a99d99fcb7a97ef5">Hyperplane</a> ()</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Default constructor without initialization.  <a href="#a1359e8b3261f1995a99d99fcb7a97ef5"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;int OtherOptions&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c42df3e8b89ff6b27128ccdc89a9926">Hyperplane</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#aaa9e6c8814c722cd9d28ecf2460bb740">Hyperplane</a> (<a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a> _dim)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a dynamic-size hyperplane with <em>_dim</em> the dimension of the ambient space.  <a href="#aaa9e6c8814c722cd9d28ecf2460bb740"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ac089921bf43e7e61516512b48ca027d1">Hyperplane</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;n, const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;e)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Construct a plane from its normal <em>n</em> and a point <em>e</em> onto the plane.  <a href="#ac089921bf43e7e61516512b48ca027d1"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a74f3e379996b46acd10056c2559c3a21">Hyperplane</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;n, <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> d)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a plane from its normal <em>n</em> and distance to the origin <em>d</em> such that the algebraic equation of the plane is <img class="formulaInl" alt="$ n \cdot x + d = 0 $" src="form_217.png"/>.  <a href="#a74f3e379996b46acd10056c2559c3a21"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a28f025a5a714beba4b8244ae42c046e5">Hyperplane</a> (const <a class="el" href="class_eigen_1_1_parametrized_line.html">ParametrizedLine</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime &gt; &amp;parametrized)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a hyperplane passing through the parametrized line <em>parametrized</em>.  <a href="#a28f025a5a714beba4b8244ae42c046e5"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a4bd7b52da4d8a54fdcf1a6bffc24e837">~Hyperplane</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ade20077c826845f36da19e8b52403066">dim</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a976b10f77ff8663d26635163f5490709">normalize</a> (void)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">normalizes <code>*this</code>  <a href="#a976b10f77ff8663d26635163f5490709"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a526e11e61cef8af23dc3c41422c0ba41">signedDistance</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#aae4e1f65d239501fc4dbd7e7ce2825a4">absDistance</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a62886fe9852417fda8faa6999819f9a1">projection</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p) const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a629047ccdd28e7c175d6d8f2d0312132">ConstNormalReturnType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a8c0588a2992c7aa1110d554eda6efdac">normal</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#ab8552039bed6fc9d153fe8cb39cd913d">NormalReturnType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a2044fcb0bcb3c81ffeaa383389ad1645">normal</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#afa7f095874b90319131c0455fb9ba3d1">offset</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a62d88fd2a7b3af3e8591093805824413">offset</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const <a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ae2907e3c516bb5aae161fdb6fe2d19f8">coeffs</a> () const </td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a> &amp;&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#af92ace13da7b7889f8a78893add7ca10">coeffs</a> ()</td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a61fd6f663230276c62ed40d0c0816226">intersection</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> &amp;other) const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename XprType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a3ad5bde1c904a547d99bbe216856f943">transform</a> (const <a class="el" href="class_eigen_1_1_matrix_base.html">MatrixBase</a>&lt; XprType &gt; &amp;mat, <a class="el" href="group__enums.html#gaee59a86102f150923b0cac6d4ff05107">TransformTraits</a> traits=Affine)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the transformation matrix <em>mat</em> to <code>*this</code> and returns a reference to <code>*this</code>.  <a href="#a3ad5bde1c904a547d99bbe216856f943"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;int TrOptions&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> &amp;&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a999552c18309b4515d1504cafc965513">transform</a> (const <a class="el" href="class_eigen_1_1_transform.html">Transform</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, Affine, TrOptions &gt; &amp;t, <a class="el" href="group__enums.html#gaee59a86102f150923b0cac6d4ff05107">TransformTraits</a> traits=Affine)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Applies the transformation <em>t</em> to <code>*this</code> and returns a reference to <code>*this</code>.  <a href="#a999552c18309b4515d1504cafc965513"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename NewScalarType &gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top"><a class="el" href="struct_eigen_1_1internal_1_1cast__return__type.html">internal::cast_return_type</a><br class="typebreak"/>
&lt; <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>, <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a><br class="typebreak"/>
&lt; NewScalarType, <br class="typebreak"/>
AmbientDimAtCompileTime, <br class="typebreak"/>
Options &gt; &gt;::type&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a222e84332e31dff4b441105af3bf9a46">cast</a> () const </td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;typename OtherScalarType , int OtherOptions&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ae5e70a57dc725bfda494d3a43bed663b">Hyperplane</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; OtherScalarType, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Copy constructor with scalar type conversion.  <a href="#ae5e70a57dc725bfda494d3a43bed663b"></a><br/></td></tr>
<tr><td class="memTemplParams" colspan="2">template&lt;int OtherOptions&gt; </td></tr>
<tr><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a304707da77eb7ff003a489fcfb85c2b9">isApprox</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other, typename <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &gt;::Real prec=<a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &gt;::dummy_precision()) const </td></tr>
<tr><td colspan="2"><h2><a name="pub-static-methods"></a>
Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ac091145737ed1eb627b45060e459a940">Through</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p0, const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p1)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a hyperplane passing through the two points.  <a href="#ac091145737ed1eb627b45060e459a940"></a><br/></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">static <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#a861fd6c146cc1d39bc5386298dc5af25">Through</a> (const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p0, const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p1, const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;p2)</td></tr>
<tr><td class="mdescLeft">&#160;</td><td class="mdescRight">Constructs a hyperplane passing through the three points.  <a href="#a861fd6c146cc1d39bc5386298dc5af25"></a><br/></td></tr>
<tr><td colspan="2"><h2><a name="pro-attribs"></a>
Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="class_eigen_1_1_hyperplane.html#ae390b18ded26b967236fd7477852d2ef">m_coeffs</a></td></tr>
</table>
<hr/><h2>Member Typedef Documentation</h2>
<a class="anchor" id="a3c88e1e3ba36cf3d39d18af0cd351dde"></a><!-- doxytag: member="Eigen::Hyperplane::Coefficients" ref="a3c88e1e3ba36cf3d39d18af0cd351dde" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>,<a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a>(AmbientDimAtCompileTime)==<a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a> ? <a class="el" href="namespace_eigen.html#ad81fa7195215a0ce30017dfac309f0b2">Dynamic</a> : <a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a>(AmbientDimAtCompileTime)+1,1,Options&gt; <a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Eigen::Hyperplane::Coefficients</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00062">62</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a629047ccdd28e7c175d6d8f2d0312132"></a><!-- doxytag: member="Eigen::Hyperplane::ConstNormalReturnType" ref="a629047ccdd28e7c175d6d8f2d0312132" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef const <a class="el" href="class_eigen_1_1_block.html">Block</a>&lt;const <a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>,AmbientDimAtCompileTime,1&gt; <a class="el" href="class_eigen_1_1_hyperplane.html#a629047ccdd28e7c175d6d8f2d0312132">Eigen::Hyperplane::ConstNormalReturnType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00064">64</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a596de5c69d6e8d8154681b8e8377f561"></a><!-- doxytag: member="Eigen::Hyperplane::Index" ref="a596de5c69d6e8d8154681b8e8377f561" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="namespace_eigen.html#aa06499c94936a19673e53deb516a1b76">DenseIndex</a> <a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Eigen::Hyperplane::Index</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00058">58</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ab8552039bed6fc9d153fe8cb39cd913d"></a><!-- doxytag: member="Eigen::Hyperplane::NormalReturnType" ref="ab8552039bed6fc9d153fe8cb39cd913d" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="class_eigen_1_1_block.html">Block</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>,AmbientDimAtCompileTime,1&gt; <a class="el" href="class_eigen_1_1_hyperplane.html#ab8552039bed6fc9d153fe8cb39cd913d">Eigen::Hyperplane::NormalReturnType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00063">63</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="af9f78905753c61f9fcfdde4cca6b5f47"></a><!-- doxytag: member="Eigen::Hyperplane::RealScalar" ref="af9f78905753c61f9fcfdde4cca6b5f47" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&gt;::Real <a class="el" href="class_eigen_1_1_hyperplane.html#af9f78905753c61f9fcfdde4cca6b5f47">Eigen::Hyperplane::RealScalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00057">57</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a76038652501a9e5771006e149bc9b64a"></a><!-- doxytag: member="Eigen::Hyperplane::Scalar" ref="a76038652501a9e5771006e149bc9b64a" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef _Scalar <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Eigen::Hyperplane::Scalar</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00056">56</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a285218a7793675a062645a95d814d7bc"></a><!-- doxytag: member="Eigen::Hyperplane::VectorType" ref="a285218a7793675a062645a95d814d7bc" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="class_eigen_1_1_matrix.html">Matrix</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>,AmbientDimAtCompileTime,1&gt; <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">Eigen::Hyperplane::VectorType</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00059">59</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<hr/><h2>Member Enumeration Documentation</h2>
<a class="anchor" id="a8f8ea81f51e47e98fd9fe959d11e5961"></a><!-- doxytag: member="Eigen::Hyperplane::@366" ref="a8f8ea81f51e47e98fd9fe959d11e5961" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">anonymous enum</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl><dt><b>Enumerator: </b></dt><dd><table border="0" cellspacing="2" cellpadding="0">
<tr><td valign="top"><em><a class="anchor" id="a8f8ea81f51e47e98fd9fe959d11e5961a0e4e05f9e3ed86757ccc7964bd845f2d"></a><!-- doxytag: member="AmbientDimAtCompileTime" ref="a8f8ea81f51e47e98fd9fe959d11e5961a0e4e05f9e3ed86757ccc7964bd845f2d" args="" -->AmbientDimAtCompileTime</em>&nbsp;</td><td>
</td></tr>
<tr><td valign="top"><em><a class="anchor" id="a8f8ea81f51e47e98fd9fe959d11e5961a20f7fef933f07e78abfcdac7b6efd885"></a><!-- doxytag: member="Options" ref="a8f8ea81f51e47e98fd9fe959d11e5961a20f7fef933f07e78abfcdac7b6efd885" args="" -->Options</em>&nbsp;</td><td>
</td></tr>
</table>
</dd>
</dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00052">52</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<hr/><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" id="a1359e8b3261f1995a99d99fcb7a97ef5"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="a1359e8b3261f1995a99d99fcb7a97ef5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Default constructor without initialization. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00067">67</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a3c42df3e8b89ff6b27128ccdc89a9926"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="a3c42df3e8b89ff6b27128ccdc89a9926" args="(const Hyperplane&lt; Scalar, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;int OtherOptions&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, OtherOptions &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00070">70</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="aaa9e6c8814c722cd9d28ecf2460bb740"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="aaa9e6c8814c722cd9d28ecf2460bb740" args="(Index _dim)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a>&#160;</td>
          <td class="paramname"><em>_dim</em></td><td>)</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a dynamic-size hyperplane with <em>_dim</em> the dimension of the ambient space. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00076">76</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ac089921bf43e7e61516512b48ca027d1"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="ac089921bf43e7e61516512b48ca027d1" args="(const VectorType &amp;n, const VectorType &amp;e)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>e</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Construct a plane from its normal <em>n</em> and a point <em>e</em> onto the plane. </p>
<dl class="warning"><dt><b>Warning:</b></dt><dd>the vector normal is assumed to be normalized. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00081">81</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a74f3e379996b46acd10056c2559c3a21"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="a74f3e379996b46acd10056c2559c3a21" args="(const VectorType &amp;n, Scalar d)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>n</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&#160;</td>
          <td class="paramname"><em>d</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a plane from its normal <em>n</em> and distance to the origin <em>d</em> such that the algebraic equation of the plane is <img class="formulaInl" alt="$ n \cdot x + d = 0 $" src="form_217.png"/>. </p>
<dl class="warning"><dt><b>Warning:</b></dt><dd>the vector normal is assumed to be normalized. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00092">92</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a28f025a5a714beba4b8244ae42c046e5"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="a28f025a5a714beba4b8244ae42c046e5" args="(const ParametrizedLine&lt; Scalar, AmbientDimAtCompileTime &gt; &amp;parametrized)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_parametrized_line.html">ParametrizedLine</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime &gt; &amp;&#160;</td>
          <td class="paramname"><em>parametrized</em></td><td>)</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a hyperplane passing through the parametrized line <em>parametrized</em>. </p>
<p>If the dimension of the ambient space is greater than 2, then there isn't uniqueness, so an arbitrary choice is made. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00127">127</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a4bd7b52da4d8a54fdcf1a6bffc24e837"></a><!-- doxytag: member="Eigen::Hyperplane::~Hyperplane" ref="a4bd7b52da4d8a54fdcf1a6bffc24e837" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::~Hyperplane </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00133">133</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ae5e70a57dc725bfda494d3a43bed663b"></a><!-- doxytag: member="Eigen::Hyperplane::Hyperplane" ref="ae5e70a57dc725bfda494d3a43bed663b" args="(const Hyperplane&lt; OtherScalarType, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename OtherScalarType , int OtherOptions&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">Eigen::Hyperplane::Hyperplane </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; OtherScalarType, AmbientDimAtCompileTime, OtherOptions &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Copy constructor with scalar type conversion. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00265">265</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<hr/><h2>Member Function Documentation</h2>
<a class="anchor" id="aae4e1f65d239501fc4dbd7e7ce2825a4"></a><!-- doxytag: member="Eigen::Hyperplane::absDistance" ref="aae4e1f65d239501fc4dbd7e7ce2825a4" args="(const VectorType &amp;p) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> Eigen::Hyperplane::absDistance </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the absolute distance between the plane <code>*this</code> and a point <em>p</em>. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_hyperplane.html#a526e11e61cef8af23dc3c41422c0ba41">signedDistance()</a> </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00152">152</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a222e84332e31dff4b441105af3bf9a46"></a><!-- doxytag: member="Eigen::Hyperplane::cast" ref="a222e84332e31dff4b441105af3bf9a46" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename NewScalarType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="struct_eigen_1_1internal_1_1cast__return__type.html">internal::cast_return_type</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>, <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt;NewScalarType,AmbientDimAtCompileTime,Options&gt; &gt;::type Eigen::Hyperplane::cast </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></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>

<p>Definition at line <a class="el" href="_geometry_source.html#l00257">257</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ae2907e3c516bb5aae161fdb6fe2d19f8"></a><!-- doxytag: member="Eigen::Hyperplane::coeffs" ref="ae2907e3c516bb5aae161fdb6fe2d19f8" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>&amp; Eigen::Hyperplane::coeffs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a constant reference to the coefficients c_i of the plane equation: <img class="formulaInl" alt="$ c_0*x_0 + ... + c_{d-1}*x_{d-1} + c_d = 0 $" src="form_237.png"/> </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00180">180</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="af92ace13da7b7889f8a78893add7ca10"></a><!-- doxytag: member="Eigen::Hyperplane::coeffs" ref="af92ace13da7b7889f8a78893add7ca10" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a>&amp; Eigen::Hyperplane::coeffs </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a non-constant reference to the coefficients c_i of the plane equation: <img class="formulaInl" alt="$ c_0*x_0 + ... + c_{d-1}*x_{d-1} + c_d = 0 $" src="form_237.png"/> </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00185">185</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ade20077c826845f36da19e8b52403066"></a><!-- doxytag: member="Eigen::Hyperplane::dim" ref="ade20077c826845f36da19e8b52403066" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a596de5c69d6e8d8154681b8e8377f561">Index</a> Eigen::Hyperplane::dim </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the dimension in which the plane holds </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00136">136</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a61fd6f663230276c62ed40d0c0816226"></a><!-- doxytag: member="Eigen::Hyperplane::intersection" ref="a61fd6f663230276c62ed40d0c0816226" args="(const Hyperplane &amp;other) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> Eigen::Hyperplane::intersection </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> &amp;&#160;</td>
          <td class="paramname"><em>other</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the intersection of *this with <em>other</em>.</dd></dl>
<dl class="warning"><dt><b>Warning:</b></dt><dd>The ambient space must be a plane, i.e. have dimension 2, so that <code>*this</code> and <em>other</em> are lines.</dd></dl>
<dl class="note"><dt><b>Note:</b></dt><dd>If <em>other</em> is approximately parallel to *this, this method will return any point on *this. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00193">193</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a304707da77eb7ff003a489fcfb85c2b9"></a><!-- doxytag: member="Eigen::Hyperplane::isApprox" ref="a304707da77eb7ff003a489fcfb85c2b9" args="(const Hyperplane&lt; Scalar, AmbientDimAtCompileTime, OtherOptions &gt; &amp;other, typename NumTraits&lt; Scalar &gt;::Real prec=NumTraits&lt; Scalar &gt;::dummy_precision()) const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;int OtherOptions&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool Eigen::Hyperplane::isApprox </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, OtherOptions &gt; &amp;&#160;</td>
          <td class="paramname"><em>other</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">typename <a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> &gt;::Real&#160;</td>
          <td class="paramname"><em>prec</em> = <code><a class="el" href="struct_eigen_1_1_num_traits.html">NumTraits</a>&lt;<a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&gt;::dummy_precision()</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></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="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_dense_base.html#ad054d515cf1c46a71e621dea16af2dda">MatrixBase::isApprox()</a> </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00273">273</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a8c0588a2992c7aa1110d554eda6efdac"></a><!-- doxytag: member="Eigen::Hyperplane::normal" ref="a8c0588a2992c7aa1110d554eda6efdac" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a629047ccdd28e7c175d6d8f2d0312132">ConstNormalReturnType</a> Eigen::Hyperplane::normal </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a constant reference to the unit normal vector of the plane, which corresponds to the linear part of the implicit equation. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00161">161</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a2044fcb0bcb3c81ffeaa383389ad1645"></a><!-- doxytag: member="Eigen::Hyperplane::normal" ref="a2044fcb0bcb3c81ffeaa383389ad1645" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#ab8552039bed6fc9d153fe8cb39cd913d">NormalReturnType</a> Eigen::Hyperplane::normal </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a non-constant reference to the unit normal vector of the plane, which corresponds to the linear part of the implicit equation. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00166">166</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a976b10f77ff8663d26635163f5490709"></a><!-- doxytag: member="Eigen::Hyperplane::normalize" ref="a976b10f77ff8663d26635163f5490709" args="(void)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void Eigen::Hyperplane::normalize </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>normalizes <code>*this</code> </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00139">139</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="afa7f095874b90319131c0455fb9ba3d1"></a><!-- doxytag: member="Eigen::Hyperplane::offset" ref="afa7f095874b90319131c0455fb9ba3d1" args="() const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&amp; Eigen::Hyperplane::offset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the distance to the origin, which is also the "constant term" of the implicit equation </dd></dl>
<dl class="warning"><dt><b>Warning:</b></dt><dd>the vector normal is assumed to be normalized. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00171">171</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a62d88fd2a7b3af3e8591093805824413"></a><!-- doxytag: member="Eigen::Hyperplane::offset" ref="a62d88fd2a7b3af3e8591093805824413" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>&amp; Eigen::Hyperplane::offset </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>a non-constant reference to the distance to the origin, which is also the constant part of the implicit equation </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00175">175</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a62886fe9852417fda8faa6999819f9a1"></a><!-- doxytag: member="Eigen::Hyperplane::projection" ref="a62886fe9852417fda8faa6999819f9a1" args="(const VectorType &amp;p) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> Eigen::Hyperplane::projection </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the projection of a point <em>p</em> onto the plane <code>*this</code>. </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00156">156</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a526e11e61cef8af23dc3c41422c0ba41"></a><!-- doxytag: member="Eigen::Hyperplane::signedDistance" ref="a526e11e61cef8af23dc3c41422c0ba41" args="(const VectorType &amp;p) const " -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a> Eigen::Hyperplane::signedDistance </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p</em></td><td>)</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<dl class="return"><dt><b>Returns:</b></dt><dd>the signed distance between the plane <code>*this</code> and a point <em>p</em>. </dd></dl>
<dl class="see"><dt><b>See also:</b></dt><dd><a class="el" href="class_eigen_1_1_hyperplane.html#aae4e1f65d239501fc4dbd7e7ce2825a4">absDistance()</a> </dd></dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00147">147</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="ac091145737ed1eb627b45060e459a940"></a><!-- doxytag: member="Eigen::Hyperplane::Through" ref="ac091145737ed1eb627b45060e459a940" args="(const VectorType &amp;p0, const VectorType &amp;p1)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> Eigen::Hyperplane::Through </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p1</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a hyperplane passing through the two points. </p>
<p>If the dimension of the ambient space is greater than 2, then there isn't uniqueness, so an arbitrary choice is made. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00102">102</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a861fd6c146cc1d39bc5386298dc5af25"></a><!-- doxytag: member="Eigen::Hyperplane::Through" ref="a861fd6c146cc1d39bc5386298dc5af25" args="(const VectorType &amp;p0, const VectorType &amp;p1, const VectorType &amp;p2)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a> Eigen::Hyperplane::Through </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p0</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p1</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_hyperplane.html#a285218a7793675a062645a95d814d7bc">VectorType</a> &amp;&#160;</td>
          <td class="paramname"><em>p2</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline, static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Constructs a hyperplane passing through the three points. </p>
<p>The dimension of the ambient space is required to be exactly 3. </p>

<p>Definition at line <a class="el" href="_geometry_source.html#l00113">113</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a3ad5bde1c904a547d99bbe216856f943"></a><!-- doxytag: member="Eigen::Hyperplane::transform" ref="a3ad5bde1c904a547d99bbe216856f943" args="(const MatrixBase&lt; XprType &gt; &amp;mat, TransformTraits traits=Affine)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;typename XprType &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&amp; Eigen::Hyperplane::transform </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_matrix_base.html">MatrixBase</a>&lt; XprType &gt; &amp;&#160;</td>
          <td class="paramname"><em>mat</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__enums.html#gaee59a86102f150923b0cac6d4ff05107">TransformTraits</a>&#160;</td>
          <td class="paramname"><em>traits</em> = <code>Affine</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Applies the transformation matrix <em>mat</em> to <code>*this</code> and returns a reference to <code>*this</code>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">mat</td><td>the Dim x Dim transformation matrix </td></tr>
    <tr><td class="paramname">traits</td><td>specifies whether the matrix <em>mat</em> represents an <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a84413028615d2d718bafd2dfb93dafef" title="Transformation is an isometry.">Isometry</a> or a more generic <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a0872f0a82453aaae40339c33acbb31fb" title="Transformation is an affine transformation stored as a (Dim+1)^2 matrix whose last row is assumed to ...">Affine</a> transformation. The default is <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a0872f0a82453aaae40339c33acbb31fb" title="Transformation is an affine transformation stored as a (Dim+1)^2 matrix whose last row is assumed to ...">Affine</a>. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00221">221</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<a class="anchor" id="a999552c18309b4515d1504cafc965513"></a><!-- doxytag: member="Eigen::Hyperplane::transform" ref="a999552c18309b4515d1504cafc965513" args="(const Transform&lt; Scalar, AmbientDimAtCompileTime, Affine, TrOptions &gt; &amp;t, TransformTraits traits=Affine)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;int TrOptions&gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html">Hyperplane</a>&amp; Eigen::Hyperplane::transform </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="class_eigen_1_1_transform.html">Transform</a>&lt; <a class="el" href="class_eigen_1_1_hyperplane.html#a76038652501a9e5771006e149bc9b64a">Scalar</a>, AmbientDimAtCompileTime, Affine, TrOptions &gt; &amp;&#160;</td>
          <td class="paramname"><em>t</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="group__enums.html#gaee59a86102f150923b0cac6d4ff05107">TransformTraits</a>&#160;</td>
          <td class="paramname"><em>traits</em> = <code>Affine</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Applies the transformation <em>t</em> to <code>*this</code> and returns a reference to <code>*this</code>. </p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table class="params">
    <tr><td class="paramname">t</td><td>the transformation of dimension Dim </td></tr>
    <tr><td class="paramname">traits</td><td>specifies whether the transformation <em>t</em> represents an <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a84413028615d2d718bafd2dfb93dafef" title="Transformation is an isometry.">Isometry</a> or a more generic <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a0872f0a82453aaae40339c33acbb31fb" title="Transformation is an affine transformation stored as a (Dim+1)^2 matrix whose last row is assumed to ...">Affine</a> transformation. The default is <a class="el" href="group__enums.html#ggaee59a86102f150923b0cac6d4ff05107a0872f0a82453aaae40339c33acbb31fb" title="Transformation is an affine transformation stored as a (Dim+1)^2 matrix whose last row is assumed to ...">Affine</a>. Other kind of transformations are not supported. </td></tr>
  </table>
  </dd>
</dl>

<p>Definition at line <a class="el" href="_geometry_source.html#l00242">242</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
<hr/><h2>Member Data Documentation</h2>
<a class="anchor" id="ae390b18ded26b967236fd7477852d2ef"></a><!-- doxytag: member="Eigen::Hyperplane::m_coeffs" ref="ae390b18ded26b967236fd7477852d2ef" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="class_eigen_1_1_hyperplane.html#a3c88e1e3ba36cf3d39d18af0cd351dde">Coefficients</a> <a class="el" href="class_eigen_1_1_hyperplane.html#ae390b18ded26b967236fd7477852d2ef">Eigen::Hyperplane::m_coeffs</a><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>Definition at line <a class="el" href="_geometry_source.html#l00278">278</a> of file <a class="el" href="_geometry_source.html">Geometry</a>.</p>

</div>
</div>
</div>
<br><hr><br> <table border="0" width="100%"> <tr> <td> Page generated by <a href="http://www.doxygen.org" target="_blank">Doxygen 1.7.5</a> for MRPT 0.9.5 SVN: at Sun Sep 25 17:20:18 UTC 2011</td><td></td> <td width="100"> </td> <td width="150">  </td></tr> </table>  </body></html>