Logo Search packages:      
Sourcecode: blender version File versions  Download package

Hyperplane< _Scalar, _AmbientDim > Class Template Reference
[Geometry_Module]

#include <Hyperplane.h>

List of all members.


Detailed Description

template<typename _Scalar, int _AmbientDim>
class Hyperplane< _Scalar, _AmbientDim >

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.

Parameters:
_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 $ n \cdot x + d = 0 $ where $ n $ is a unit normal vector of the plane (linear part) and $ d $ is the distance (offset) to the origin.

Definition at line 47 of file Hyperplane.h.


Public Types

enum  { AmbientDimAtCompileTime = _AmbientDim }
typedef Matrix< Scalar,
AmbientDimAtCompileTime==Dynamic?Dynamic:AmbientDimAtCompileTime+1, 1 > 
Coefficients
typedef Block< Coefficients,
AmbientDimAtCompileTime, 1 > 
NormalReturnType
typedef NumTraits< Scalar >::Real RealScalar
typedef _Scalar Scalar
typedef Matrix< Scalar,
AmbientDimAtCompileTime, 1 > 
VectorType

Public Member Functions

Scalar absDistance (const VectorType &p) const
template<typename NewScalarType>
ei_cast_return_type
< Hyperplane, Hyperplane
< NewScalarType,
AmbientDimAtCompileTime >
>::type 
cast () const
Coefficientscoeffs ()
const Coefficientscoeffs () const
int dim () const
template<typename OtherScalarType>
 Hyperplane (const Hyperplane< OtherScalarType, AmbientDimAtCompileTime > &other)
 Hyperplane (const ParametrizedLine< Scalar, AmbientDimAtCompileTime > &parametrized)
 Hyperplane (const VectorType &n, Scalar d)
 Hyperplane (const VectorType &n, const VectorType &e)
 Hyperplane (int _dim)
 Hyperplane ()
VectorType intersection (const Hyperplane &other)
bool isApprox (const Hyperplane &other, typename NumTraits< Scalar >::Real prec=precision< Scalar >()) const
NormalReturnType normal ()
const NormalReturnType normal () const
void normalize (void)
Scalar & offset ()
const Scalar & offset () const
VectorType projection (const VectorType &p) const
Scalar signedDistance (const VectorType &p) const
Hyperplanetransform (const Transform< Scalar, AmbientDimAtCompileTime > &t, TransformTraits traits=Affine)
template<typename XprType>
Hyperplanetransform (const MatrixBase< XprType > &mat, TransformTraits traits=Affine)

Static Public Member Functions

static Hyperplane Through (const VectorType &p0, const VectorType &p1, const VectorType &p2)
static Hyperplane Through (const VectorType &p0, const VectorType &p1)

Protected Attributes

Coefficients m_coeffs

The documentation for this class was generated from the following file:

Generated by  Doxygen 1.6.0   Back to index