A parametrized line. More...
Public Types | |
enum | { AmbientDimAtCompileTime , Options } |
typedef Eigen::Index | Index |
typedef NumTraits< Scalar >::Real | RealScalar |
typedef Scalar_ | Scalar |
typedef Matrix< Scalar, AmbientDimAtCompileTime, 1, Options > | VectorType |
Public Member Functions | |
template<typename NewScalarType > | |
internal::cast_return_type< ParametrizedLine, ParametrizedLine< NewScalarType, AmbientDimAtCompileTime, Options > >::type | cast () const |
Index | dim () const |
VectorType & | direction () |
const VectorType & | direction () const |
RealScalar | distance (const VectorType &p) const |
template<int OtherOptions> | |
Scalar | intersection (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) const |
template<int OtherOptions> | |
Scalar_ | intersection (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) const |
template<int OtherOptions> | |
Scalar | intersectionParameter (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) const |
template<int OtherOptions> | |
Scalar_ | intersectionParameter (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) const |
template<int OtherOptions> | |
VectorType | intersectionPoint (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) const |
bool | isApprox (const ParametrizedLine &other, const typename NumTraits< Scalar >::Real &prec=NumTraits< Scalar >::dummy_precision()) const |
VectorType & | origin () |
const VectorType & | origin () const |
ParametrizedLine () | |
template<int OtherOptions> | |
ParametrizedLine (const Hyperplane< Scalar_, AmbientDim_, OtherOptions > &hyperplane) | |
template<typename OtherScalarType , int OtherOptions> | |
ParametrizedLine (const ParametrizedLine< OtherScalarType, AmbientDimAtCompileTime, OtherOptions > &other) | |
template<int OtherOptions> | |
ParametrizedLine (const ParametrizedLine< Scalar, AmbientDimAtCompileTime, OtherOptions > &other) | |
ParametrizedLine (const VectorType &origin, const VectorType &direction) | |
ParametrizedLine (Index _dim) | |
VectorType | pointAt (const Scalar &t) const |
VectorType | projection (const VectorType &p) const |
RealScalar | squaredDistance (const VectorType &p) const |
template<typename XprType > | |
ParametrizedLine & | transform (const MatrixBase< XprType > &mat, TransformTraits traits=Affine) |
template<int TrOptions> | |
ParametrizedLine & | transform (const Transform< Scalar, AmbientDimAtCompileTime, Affine, TrOptions > &t, TransformTraits traits=Affine) |
~ParametrizedLine () | |
Static Public Member Functions | |
static ParametrizedLine | Through (const VectorType &p0, const VectorType &p1) |
Protected Attributes | |
VectorType | m_direction |
VectorType | m_origin |
A parametrized line.
This is defined in the Geometry module.
A parametrized line is defined by an origin point \( \mathbf{o} \) and a unit direction vector \( \mathbf{d} \) such that the line corresponds to the set \( l(t) = \mathbf{o} + t \mathbf{d} \), \( t \in \mathbf{R} \).
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. |
Definition at line 32 of file ParametrizedLine.h.
typedef Eigen::Index Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::Index |
Definition at line 42 of file ParametrizedLine.h.
typedef NumTraits<Scalar>::Real Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::RealScalar |
Definition at line 41 of file ParametrizedLine.h.
typedef Scalar_ Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::Scalar |
Definition at line 40 of file ParametrizedLine.h.
typedef Matrix<Scalar,AmbientDimAtCompileTime,1,Options> Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::VectorType |
Definition at line 43 of file ParametrizedLine.h.
anonymous enum |
Enumerator | |
---|---|
AmbientDimAtCompileTime | |
Options |
Definition at line 36 of file ParametrizedLine.h.
|
inline |
|
inline |
Definition at line 49 of file ParametrizedLine.h.
|
inlineexplicit |
Constructs a dynamic-size line with _dim the dimension of the ambient space
Definition at line 55 of file ParametrizedLine.h.
|
inline |
Initializes a parametrized line of direction direction and origin origin.
Definition at line 60 of file ParametrizedLine.h.
|
inlineexplicit |
Constructs a parametrized line from a 2D hyperplane
Definition at line 185 of file ParametrizedLine.h.
|
inline |
Definition at line 70 of file ParametrizedLine.h.
|
inlineexplicit |
|
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 153 of file ParametrizedLine.h.
|
inline |
|
inline |
Definition at line 79 of file ParametrizedLine.h.
|
inline |
Definition at line 78 of file ParametrizedLine.h.
|
inline |
*this
. Definition at line 92 of file ParametrizedLine.h.
Scalar Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::intersection | ( | const Hyperplane< Scalar_, AmbientDim_, OtherOptions > & | hyperplane | ) | const |
|
inline |
*this
and the given hyperplane Definition at line 217 of file ParametrizedLine.h.
Scalar Eigen::ParametrizedLine< Scalar_, AmbientDim_, Options_ >::intersectionParameter | ( | const Hyperplane< Scalar_, AmbientDim_, OtherOptions > & | hyperplane | ) | const |
|
inline |
*this
and the given hyperplane Definition at line 205 of file ParametrizedLine.h.
|
inline |
*this
and the given hyperplane Definition at line 227 of file ParametrizedLine.h.
|
inline |
true
if *this
is approximately equal to other, within the precision determined by prec.Definition at line 171 of file ParametrizedLine.h.
|
inline |
Definition at line 76 of file ParametrizedLine.h.
|
inline |
Definition at line 75 of file ParametrizedLine.h.
|
inline |
Definition at line 196 of file ParametrizedLine.h.
|
inline |
|
inline |
*this
. Definition at line 84 of file ParametrizedLine.h.
|
inlinestatic |
Constructs a parametrized line going from p0 to p1.
Definition at line 67 of file ParametrizedLine.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 116 of file ParametrizedLine.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 138 of file ParametrizedLine.h.
|
protected |
Definition at line 176 of file ParametrizedLine.h.
|
protected |
Definition at line 176 of file ParametrizedLine.h.