An axis aligned box
| _Scalar | the type of the scalar coefficients |
| _AmbientDim | the dimension of the ambient space, can be a compile time value or Dynamic. |
This class represents an axis aligned box as a pair of the minimal and maximal corners.
Public Types | |
| enum | { AmbientDimAtCompileTime = _AmbientDim } |
| enum | CornerType { Min = 0, Max = 1, BottomLeft = 0, BottomRight = 1, TopLeft = 2, TopRight = 3, BottomLeftFloor = 0, BottomRightFloor = 1, TopLeftFloor = 2, TopRightFloor = 3, BottomLeftCeil = 4, BottomRightCeil = 5, TopLeftCeil = 6, TopRightCeil = 7 } |
| Define constants to name the corners of a 1D, 2D or 3D axis aligned bounding box. More... | |
| typedef _Scalar | Scalar |
| typedef NumTraits< Scalar > | ScalarTraits |
| typedef DenseIndex | Index |
| typedef ScalarTraits::Real | RealScalar |
| typedef ScalarTraits::NonInteger | NonInteger |
| typedef Matrix< Scalar, AmbientDimAtCompileTime, 1 > | VectorType |
Public Member Functions | |
| AlignedBox () | |
| Default constructor initializing a null box. | |
| AlignedBox (Index _dim) | |
| Constructs a null box with _dim the dimension of the ambient space. | |
| template<typename OtherVectorType1 , typename OtherVectorType2 > | |
| AlignedBox (const OtherVectorType1 &_min, const OtherVectorType2 &_max) | |
| Constructs a box with extremities _min and _max. | |
| template<typename Derived > | |
| AlignedBox (const MatrixBase< Derived > &a_p) | |
| Constructs a box containing a single point p. | |
| ~AlignedBox () | |
| Index | dim () const |
| bool | isNull () const |
| void | setNull () |
| bool | isEmpty () const |
| void | setEmpty () |
Makes *this an empty box. | |
| const VectorType & | min () const |
| VectorType & | min () |
| const VectorType & | max () const |
| VectorType & | max () |
| const CwiseUnaryOp < internal::scalar_quotient1_op < Scalar >, const CwiseBinaryOp < internal::scalar_sum_op < Scalar >, const VectorType, const VectorType > > | center () const |
| const CwiseBinaryOp < internal::scalar_difference_op < Scalar >, const VectorType, const VectorType > | sizes () const |
| Scalar | volume () const |
| CwiseBinaryOp < internal::scalar_difference_op < Scalar >, const VectorType, const VectorType > | diagonal () const |
| VectorType | corner (CornerType corner) const |
| VectorType | sample () const |
| template<typename Derived > | |
| bool | contains (const MatrixBase< Derived > &a_p) const |
| bool | contains (const AlignedBox &b) const |
| template<typename Derived > | |
| AlignedBox & | extend (const MatrixBase< Derived > &a_p) |
Extends *this such that it contains the point p and returns a reference to *this. | |
| AlignedBox & | extend (const AlignedBox &b) |
Extends *this such that it contains the box b and returns a reference to *this. | |
| AlignedBox & | clamp (const AlignedBox &b) |
Clamps *this by the box b and returns a reference to *this. | |
| AlignedBox | intersection (const AlignedBox &b) const |
Returns an AlignedBox that is the intersection of b and *this. | |
| AlignedBox | merged (const AlignedBox &b) const |
Returns an AlignedBox that is the union of b and *this. | |
| template<typename Derived > | |
| AlignedBox & | translate (const MatrixBase< Derived > &a_t) |
Translate *this by the vector t and returns a reference to *this. | |
| template<typename Derived > | |
| Scalar | squaredExteriorDistance (const MatrixBase< Derived > &a_p) const |
| Scalar | squaredExteriorDistance (const AlignedBox &b) const |
| template<typename Derived > | |
| NonInteger | exteriorDistance (const MatrixBase< Derived > &p) const |
| NonInteger | exteriorDistance (const AlignedBox &b) const |
| template<typename NewScalarType > | |
| internal::cast_return_type < AlignedBox, AlignedBox < NewScalarType, AmbientDimAtCompileTime > >::type | cast () const |
| template<typename OtherScalarType > | |
| AlignedBox (const AlignedBox< OtherScalarType, AmbientDimAtCompileTime > &other) | |
| Copy constructor with scalar type conversion. | |
| bool | isApprox (const AlignedBox &other, RealScalar prec=ScalarTraits::dummy_precision()) const |
Protected Attributes | |
| VectorType | m_min |
| VectorType | m_max |
| typedef DenseIndex Eigen::AlignedBox::Index |
| typedef ScalarTraits::NonInteger Eigen::AlignedBox::NonInteger |
| typedef ScalarTraits::Real Eigen::AlignedBox::RealScalar |
| typedef _Scalar Eigen::AlignedBox::Scalar |
| typedef Matrix<Scalar,AmbientDimAtCompileTime,1> Eigen::AlignedBox::VectorType |
Define constants to name the corners of a 1D, 2D or 3D axis aligned bounding box.
| Eigen::AlignedBox::AlignedBox | ( | ) | [inline, explicit] |
| Eigen::AlignedBox::AlignedBox | ( | Index | _dim | ) | [inline, explicit] |
| Eigen::AlignedBox::AlignedBox | ( | const OtherVectorType1 & | _min, |
| const OtherVectorType2 & | _max | ||
| ) | [inline] |
| Eigen::AlignedBox::AlignedBox | ( | const MatrixBase< Derived > & | a_p | ) | [inline, explicit] |
| Eigen::AlignedBox::AlignedBox | ( | const AlignedBox< OtherScalarType, AmbientDimAtCompileTime > & | other | ) | [inline, explicit] |
| internal::cast_return_type<AlignedBox, AlignedBox<NewScalarType,AmbientDimAtCompileTime> >::type Eigen::AlignedBox::cast | ( | ) | const [inline] |
| const CwiseUnaryOp<internal::scalar_quotient1_op<Scalar>, const CwiseBinaryOp<internal::scalar_sum_op<Scalar>, const VectorType, const VectorType> > Eigen::AlignedBox::center | ( | ) | const [inline] |
| AlignedBox& Eigen::AlignedBox::clamp | ( | const AlignedBox & | b | ) | [inline] |
| bool Eigen::AlignedBox::contains | ( | const MatrixBase< Derived > & | a_p | ) | const [inline] |
| bool Eigen::AlignedBox::contains | ( | const AlignedBox & | b | ) | const [inline] |
| VectorType Eigen::AlignedBox::corner | ( | CornerType | corner | ) | const [inline] |
| CwiseBinaryOp< internal::scalar_difference_op<Scalar>, const VectorType, const VectorType> Eigen::AlignedBox::diagonal | ( | ) | const [inline] |
| Index Eigen::AlignedBox::dim | ( | ) | const [inline] |
| AlignedBox& Eigen::AlignedBox::extend | ( | const MatrixBase< Derived > & | a_p | ) | [inline] |
| AlignedBox& Eigen::AlignedBox::extend | ( | const AlignedBox & | b | ) | [inline] |
| NonInteger Eigen::AlignedBox::exteriorDistance | ( | const MatrixBase< Derived > & | p | ) | const [inline] |
*this, and zero if p is inside the box. | NonInteger Eigen::AlignedBox::exteriorDistance | ( | const AlignedBox & | b | ) | const [inline] |
*this, and zero if the boxes intersect. | AlignedBox Eigen::AlignedBox::intersection | ( | const AlignedBox & | b | ) | const [inline] |
Returns an AlignedBox that is the intersection of b and *this.
| bool Eigen::AlignedBox::isApprox | ( | const AlignedBox & | other, |
| RealScalar | prec = ScalarTraits::dummy_precision() |
||
| ) | const [inline] |
true if *this is approximately equal to other, within the precision determined by prec.| bool Eigen::AlignedBox::isEmpty | ( | ) | const [inline] |
| bool Eigen::AlignedBox::isNull | ( | ) | const [inline] |
| const VectorType& Eigen::AlignedBox::max | ( | ) | const [inline] |
| VectorType& Eigen::AlignedBox::max | ( | ) | [inline] |
| AlignedBox Eigen::AlignedBox::merged | ( | const AlignedBox & | b | ) | const [inline] |
Returns an AlignedBox that is the union of b and *this.
| const VectorType& Eigen::AlignedBox::min | ( | ) | const [inline] |
| VectorType& Eigen::AlignedBox::min | ( | ) | [inline] |
| VectorType Eigen::AlignedBox::sample | ( | ) | const [inline] |
| void Eigen::AlignedBox::setEmpty | ( | ) | [inline] |
| void Eigen::AlignedBox::setNull | ( | ) | [inline] |
| const CwiseBinaryOp< internal::scalar_difference_op<Scalar>, const VectorType, const VectorType> Eigen::AlignedBox::sizes | ( | ) | const [inline] |
| Scalar Eigen::AlignedBox::squaredExteriorDistance | ( | const MatrixBase< Derived > & | a_p | ) | const [inline] |
*this, and zero if p is inside the box. | Scalar Eigen::AlignedBox::squaredExteriorDistance | ( | const AlignedBox & | b | ) | const [inline] |
*this, and zero if the boxes intersect. | AlignedBox& Eigen::AlignedBox::translate | ( | const MatrixBase< Derived > & | a_t | ) | [inline] |
| Scalar Eigen::AlignedBox::volume | ( | ) | const [inline] |
VectorType Eigen::AlignedBox::m_max [protected] |
VectorType Eigen::AlignedBox::m_min [protected] |
| Page generated by Doxygen 1.7.5 for MRPT 0.9.5 SVN: at Thu Oct 13 21:25:36 UTC 2011 |