Eigen::ParametrizedLine
template<typename _Scalar, int _AmbientDim, int _Options>
class Eigen::ParametrizedLine< _Scalar, _AmbientDim, _Options >
A parametrized line.
This is defined in the Geometry module.
#include <Eigen/Geometry>
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} \).
- Template 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. |
|
template<typename NewScalarType > |
internal::cast_return_type< ParametrizedLine, ParametrizedLine< NewScalarType, AmbientDimAtCompileTime, Options > >::type |
cast () const |
|
Index |
dim () const |
|
RealScalar |
distance (const VectorType &p) 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> |
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 |
|
|
ParametrizedLine () |
|
template<int OtherOptions> |
|
ParametrizedLine (const Hyperplane< _Scalar, _AmbientDim, OtherOptions > &hyperplane) |
|
template<typename OtherScalarType , int OtherOptions> |
|
ParametrizedLine (const ParametrizedLine< OtherScalarType, 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) |
|
Index
template<typename _Scalar , int _AmbientDim, int _Options>
ParametrizedLine() [1/5]
template<typename _Scalar , int _AmbientDim, int _Options>
Default constructor without initialization
ParametrizedLine() [2/5]
template<typename _Scalar , int _AmbientDim, int _Options>
Constructs a dynamic-size line with _dim the dimension of the ambient space
ParametrizedLine() [3/5]
template<typename _Scalar , int _AmbientDim, int _Options>
Initializes a parametrized line of direction direction and origin origin.
- Warning
- the vector direction is assumed to be normalized.
ParametrizedLine() [4/5]
template<typename _Scalar , int _AmbientDim, int _Options>
template<int OtherOptions>
Constructs a parametrized line from a 2D hyperplane
- Warning
- the ambient space must have dimension 2 such that the hyperplane actually describes a line
ParametrizedLine() [5/5]
template<typename _Scalar , int _AmbientDim, int _Options>
template<typename OtherScalarType , int OtherOptions>
Copy constructor with scalar type conversion
cast()
template<typename _Scalar , int _AmbientDim, int _Options>
template<typename NewScalarType >
- Returns
-
*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
.
dim()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
- the dimension in which the line holds
distance()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
- the distance of a point p to its projection onto the line
*this
.
- See also
-
squaredDistance()
intersection()
template<typename _Scalar , int _AmbientDim, int _Options>
template<int OtherOptions>
- Deprecated:
- use intersectionParameter()
- Returns
- the parameter value of the intersection between
*this
and the given hyperplane
intersectionParameter()
template<typename _Scalar , int _AmbientDim, int _Options>
template<int OtherOptions>
_Scalar Eigen::ParametrizedLine< _Scalar, _AmbientDim, _Options >::intersectionParameter | ( | const Hyperplane< _Scalar, _AmbientDim, OtherOptions > & | hyperplane |
) | const | | inline |
- Returns
- the parameter value of the intersection between
*this
and the given hyperplane
intersectionPoint()
template<typename _Scalar , int _AmbientDim, int _Options>
template<int OtherOptions>
- Returns
- the point of the intersection between
*this
and the given hyperplane
isApprox()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
-
true
if *this
is approximately equal to other, within the precision determined by prec.
- See also
-
MatrixBase::isApprox()
pointAt()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
- the point at t along this line
projection()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
- the projection of a point p onto the line
*this
.
squaredDistance()
template<typename _Scalar , int _AmbientDim, int _Options>
- Returns
- the squared distance of a point p to its projection onto the line
*this
.
- See also
-
distance()
Through()
template<typename _Scalar , int _AmbientDim, int _Options>
Constructs a parametrized line going from p0 to p1.
transform() [1/2]
template<typename _Scalar , int _AmbientDim, int _Options>
template<typename XprType >
Applies the transformation matrix mat to *this
and returns a reference to *this
.
- Parameters
-
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. |
transform() [2/2]
template<typename _Scalar , int _AmbientDim, int _Options>
template<int TrOptions>
Applies the transformation t to *this
and returns a reference to *this
.
- Parameters
-
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. |
The documentation for this class was generated from the following file: