#include <ForwardDeclarations.h>
Public Types | |
enum | { AmbientDimAtCompileTime = _AmbientDim, Options = _Options } |
typedef Matrix< Scalar, Index(AmbientDimAtCompileTime)==Dynamic ? Dynamic :Index(AmbientDimAtCompileTime)+1, 1, Options > | Coefficients |
typedef const Block< const Coefficients, AmbientDimAtCompileTime, 1 > | ConstNormalReturnType |
typedef Eigen::Index | Index |
typedef Block< Coefficients, AmbientDimAtCompileTime, 1 > | NormalReturnType |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef _Scalar | Scalar |
typedef Matrix< Scalar, AmbientDimAtCompileTime, 1 > | VectorType |
Static Public Member Functions | |
static EIGEN_DEVICE_FUNC Hyperplane | Through (const VectorType &p0, const VectorType &p1) |
static EIGEN_DEVICE_FUNC Hyperplane | Through (const VectorType &p0, const VectorType &p1, const VectorType &p2) |
Protected Attributes | |
Coefficients | m_coeffs |
A hyperplane.
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.
_Scalar | the scalar type, i.e., the type of the coefficients |
_AmbientDim | the dimension of the ambient space, can be a compile time value or Dynamic. Notice that the dimension of the hyperplane is _AmbientDim-1. |
This class represents an hyperplane as the zero set of the implicit equation where is a unit normal vector of the plane (linear part) and is the distance (offset) to the origin.
Definition at line 296 of file ForwardDeclarations.h.
typedef Matrix<Scalar,Index(AmbientDimAtCompileTime)==Dynamic ? Dynamic : Index(AmbientDimAtCompileTime)+1,1,Options> Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::Coefficients |
Definition at line 48 of file Hyperplane.h.
typedef const Block<const Coefficients,AmbientDimAtCompileTime,1> Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::ConstNormalReturnType |
Definition at line 50 of file Hyperplane.h.
typedef Eigen::Index Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::Index |
Definition at line 44 of file Hyperplane.h.
typedef Block<Coefficients,AmbientDimAtCompileTime,1> Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::NormalReturnType |
Definition at line 49 of file Hyperplane.h.
typedef NumTraits<Scalar>::Real Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::RealScalar |
Definition at line 43 of file Hyperplane.h.
typedef _Scalar Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::Scalar |
Definition at line 42 of file Hyperplane.h.
typedef Matrix<Scalar,AmbientDimAtCompileTime,1> Eigen::Hyperplane< _Scalar, _AmbientDim, _Options >::VectorType |
Definition at line 45 of file Hyperplane.h.
anonymous enum |
Enumerator | |
---|---|
AmbientDimAtCompileTime | |
Options |
Definition at line 38 of file Hyperplane.h.
|
inline |
Default constructor without initialization
Definition at line 53 of file Hyperplane.h.
|
inline |
Definition at line 56 of file Hyperplane.h.
|
inlineexplicit |
Constructs a dynamic-size hyperplane with _dim the dimension of the ambient space
Definition at line 62 of file Hyperplane.h.
|
inline |
Construct a plane from its normal n and a point e onto the plane.
Definition at line 67 of file Hyperplane.h.
|
inline |
Constructs a plane from its normal n and distance to the origin d such that the algebraic equation of the plane is .
Definition at line 78 of file Hyperplane.h.
|
inlineexplicit |
Constructs a hyperplane passing through the parametrized line parametrized. If the dimension of the ambient space is greater than 2, then there isn't uniqueness, so an arbitrary choice is made.
Definition at line 123 of file Hyperplane.h.
|
inline |
Definition at line 129 of file Hyperplane.h.
|
inlineexplicit |
Copy constructor with scalar type conversion
Definition at line 264 of file Hyperplane.h.
|
inline |
*this
and a point p. Definition at line 148 of file Hyperplane.h.
|
inline |
*this
with scalar type casted to NewScalarType Note that if NewScalarType is equal to the current scalar type of *this
then this function smartly returns a const reference to *this
.
Definition at line 256 of file Hyperplane.h.
|
inline |
Definition at line 176 of file Hyperplane.h.
|
inline |
Definition at line 181 of file Hyperplane.h.
|
inline |
Definition at line 132 of file Hyperplane.h.
|
inline |
*this
and other are lines.Definition at line 189 of file Hyperplane.h.
|
inline |
true
if *this
is approximately equal to other, within the precision determined by prec.Definition at line 272 of file Hyperplane.h.
|
inline |
Definition at line 157 of file Hyperplane.h.
|
inline |
Definition at line 162 of file Hyperplane.h.
|
inline |
normalizes *this
Definition at line 135 of file Hyperplane.h.
|
inline |
Definition at line 167 of file Hyperplane.h.
|
inline |
Definition at line 171 of file Hyperplane.h.
|
inline |
*this
. Definition at line 152 of file Hyperplane.h.
|
inline |
*this
and a point p. Definition at line 143 of file Hyperplane.h.
|
inlinestatic |
Constructs a hyperplane passing through the two points. If the dimension of the ambient space is greater than 2, then there isn't uniqueness, so an arbitrary choice is made.
Definition at line 88 of file Hyperplane.h.
|
inlinestatic |
Constructs a hyperplane passing through the three points. The dimension of the ambient space is required to be exactly 3.
Definition at line 99 of file Hyperplane.h.
|
inline |
Applies the transformation matrix mat to *this
and returns a reference to *this
.
mat | the Dim x Dim transformation matrix |
traits | specifies whether the matrix mat represents an Isometry or a more generic Affine transformation. The default is Affine. |
Definition at line 217 of file Hyperplane.h.
|
inline |
Applies the transformation t to *this
and returns a reference to *this
.
t | the transformation of dimension Dim |
traits | specifies whether the transformation t represents an Isometry or a more generic Affine transformation. The default is Affine. Other kind of transformations are not supported. |
Definition at line 241 of file Hyperplane.h.
|
protected |
Definition at line 277 of file Hyperplane.h.