Spec-Zone.ru › Eigen3

Eigen::AlignedBox

template<typename _Scalar, int _AmbientDim>
class Eigen::AlignedBox< _Scalar, _AmbientDim >

Прямоугольный параллелепипед.

Определён в модуле Geometry.

#include <Eigen/Geometry> 
Параметры шаблона
_Scalar тип скалярных коэффициентов
_AmbientDim размерность окружающего пространства, может быть значением времени компиляции или Dynamic.

Этот класс представляет прямоугольный параллелепипед как пару минимальных и максимальных вершин.

Предупреждение
Результат большинства методов не определён, когда применяется к пустому параллелепипеду. Вы можете проверить пустой параллелепипед, используя isEmpty().
См. также
Глобальные псевдонимы типов прямоугольных параллелепипедов
перечисление CornerType {
Min ,
Max ,
BottomLeft ,
BottomRight ,
TopLeft ,
TopRight ,
BottomLeftFloor ,
BottomRightFloor ,
TopLeftFloor ,
TopRightFloor ,
BottomLeftCeil ,
BottomRightCeil ,
TopLeftCeil ,
TopRightCeil
}
typedef Eigen::Index Index
AlignedBox ()
template<typename OtherScalarType >
AlignedBox (const AlignedBox< OtherScalarType, AmbientDimAtCompileTime > &other)
template<typename Derived >
AlignedBox (const MatrixBase< Derived > &p)
template<typename OtherVectorType1 , typename OtherVectorType2 >
AlignedBox (const OtherVectorType1 &_min, const OtherVectorType2 &_max)
AlignedBox (Index _dim)
template<typename NewScalarType >
internal::cast_return_type< AlignedBox, AlignedBox< NewScalarType, AmbientDimAtCompileTime > >::type cast () const
AlignedBox & clamp (const AlignedBox &b)
bool contains (const AlignedBox &b) const
template<typename Derived >
bool contains (const MatrixBase< Derived > &p) const
VectorType corner (CornerType corner) const
CwiseBinaryOp< internal::scalar_difference_op< Scalar, Scalar >, const VectorType, const VectorType > diagonal () const
Index dim () const
const EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE (VectorTypeSum, RealScalar, quotient) center() const
AlignedBox & extend (const AlignedBox &b)
template<typename Derived >
AlignedBox & extend (const MatrixBase< Derived > &p)
NonInteger exteriorDistance (const AlignedBox &b) const
template<typename Derived >
NonInteger exteriorDistance (const MatrixBase< Derived > &p) const
AlignedBox intersection (const AlignedBox &b) const
bool intersects (const AlignedBox &b) const
bool isApprox (const AlignedBox &other, const RealScalar &prec=ScalarTraits::dummy_precision()) const
bool isEmpty () const
bool isNull () const
VectorType &() max ()
const VectorType &() max () const
AlignedBox merged (const AlignedBox &b) const
VectorType &() min ()
const VectorType &() min () const
VectorType sample () const
void setEmpty ()
void setNull ()
const CwiseBinaryOp< internal::scalar_difference_op< Scalar, Scalar >, const VectorType, const VectorType > sizes () const
Scalar squaredExteriorDistance (const AlignedBox &b) const
template<typename Derived >
Scalar squaredExteriorDistance (const MatrixBase< Derived > &p) const
template<int Mode, int Options>
void transform (const Transform< Scalar, AmbientDimAtCompileTime, Mode, Options > &transform)
template<int Mode, int Options>
void transform (const typename Transform< Scalar, AmbientDimAtCompileTime, Mode, Options >::TranslationType &translation)
template<int Mode, int Options>
AlignedBox transformed (const Transform< Scalar, AmbientDimAtCompileTime, Mode, Options > &transform) const
template<typename Derived >
AlignedBox & translate (const MatrixBase< Derived > &a_t)
template<typename Derived >
END_OF_DOCUMENT_MARKER
AlignedBox translated (const MatrixBase< Derived > &a_t) const
Scalar volume () const

Индекс

template<typename _Scalar , int _AmbientDim>
typedef Eigen::Index Eigen::AlignedBox< _Scalar, _AmbientDim >::Index
Устаревшее:
с версии Eigen 3.3

ТипУгла

template<typename _Scalar , int _AmbientDim>
enum Eigen::AlignedBox::CornerType

Определяет константы для наименования углов прямоугольного параллелепипеда 1D, 2D или 3D

Перечисление
Min

Имена 1D

Max

Имена 1D

BottomLeft

Идентификатор угла 2D

BottomRight

Идентификатор угла 2D

TopLeft

Идентификатор угла 2D

TopRight

Идентификатор угла 2D

BottomLeftFloor

Идентификатор угла 3D

BottomRightFloor

Идентификатор угла 3D

TopLeftFloor

Идентификатор угла 3D

TopRightFloor

Идентификатор угла 3D

BottomLeftCeil

Идентификатор угла 3D

BottomRightCeil

Идентификатор угла 3D

TopLeftCeil

Идентификатор угла 3D

TopRightCeil

Идентификатор угла 3D

AlignedBox() [1/5]

template<typename _Scalar , int _AmbientDim>
Eigen::AlignedBox< _Scalar, _AmbientDim >::AlignedBox ( )
inline

Конструктор по умолчанию, инициализирующий пустой прямоугольный параллелепипед.

AlignedBox() [2/5]

template<typename _Scalar , int _AmbientDim>
Eigen::AlignedBox< _Scalar, _AmbientDim >::AlignedBox ( Index _dim )
inlineexplicit

Создаёт пустой прямоугольный параллелепипед с заданной размерностью _dim окружающего пространства.

AlignedBox() [3/5]

template<typename _Scalar , int _AmbientDim>
template<typename OtherVectorType1 , typename OtherVectorType2 >
Eigen::AlignedBox< _Scalar, _AmbientDim >::AlignedBox ( const OtherVectorType1 & _min,
const OtherVectorType2 & _max
)
inline

Создаёт прямоугольный параллелепипед с границами _min и _max.

Предупреждение
Если любой компонент _min больше соответствующего компонента _max, создаваемый прямоугольный параллелепипед пустой.

AlignedBox() [4/5]

template<typename _Scalar , int _AmbientDim>
template<typename Derived >
Eigen::AlignedBox< _Scalar, _AmbientDim >::AlignedBox ( const MatrixBase< Derived > & p )
inlineexplicit

Создаёт прямоугольный параллелепипед, содержащий единственную точку p.

AlignedBox() [5/5]

template<typename _Scalar , int _AmbientDim>
template<typename OtherScalarType >
Eigen::AlignedBox< _Scalar, _AmbientDim >::AlignedBox ( const AlignedBox< OtherScalarType, AmbientDimAtCompileTime > & other )
inlineexplicit

Конструктор копирования с преобразованием типа скаляра.

cast()

template<typename _Scalar , int _AmbientDim>
template<typename NewScalarType >
internal::cast_return_type<AlignedBox, AlignedBox<NewScalarType,AmbientDimAtCompileTime> >::type Eigen::AlignedBox< _Scalar, _AmbientDim >::cast ( ) const
inline
Возвращает
*this со скалярным типом, преобразованным к NewScalarType

Обратите внимание, что если NewScalarType равен текущему скалярному типу *this, эта функция разумно возвращает ссылку на *this.

clamp()

template<typename _Scalar , int _AmbientDim>
AlignedBox& Eigen::AlignedBox< _Scalar, _AmbientDim >::clamp ( const AlignedBox< _Scalar, _AmbientDim > & b )
inline

Ограничивает *this прямоугольником b и возвращает ссылку на *this.

Примечание
Если прямоугольники не пересекаются, результирующий прямоугольник пустой.
См. также
intersection(), intersects()

contains() [1/2]

template<typename _Scalar , int _AmbientDim>
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::contains ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline
Возвращает
true, если прямоугольник b полностью находится внутри прямоугольника *this.

contains() [2/2]

template<typename _Scalar , int _AmbientDim>
template<typename Derived >
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::contains ( const MatrixBase< Derived > & p ) const
inline
Возвращает
true, если точка p находится внутри прямоугольника *this.

corner()

шаблон<typename _Scalar , int _AmbientDim>
ТипВектора Eigen::AlignedBox< _Scalar, _AmbientDim >::corner ( ТипУгла угол ) const
inline
Возвращает
вершину ограничивающего прямоугольника в углу, определенном идентификатором угла угол. Работает только для прямоугольников в 1D, 2D или 3D. Для 1D прямоугольников углы называются двумя константами перечисления: BottomLeft и BottomRight. Для 2D прямоугольников углы называются четырьмя константами перечисления: BottomLeft, BottomRight, TopLeft, TopRight. Для 3D прямоугольников добавляются следующие имена: BottomLeftCeil, BottomRightCeil, TopLeftCeil, TopRightCeil.

диагональ()

шаблон<typename _Scalar , int _AmbientDim>
CwiseBinaryOp< internal::scalar_difference_op<Scalar,Scalar>, const ТипВектора, const ТипВектора> Eigen::AlignedBox< _Scalar, _AmbientDim >::диагональ ( ) const
inline
Возвращает
выражение для вектора диагонали ограничивающего прямоугольника, если нужна длина диагонали: диагональ().norm() вернет ее.

размер()

шаблон<typename _Scalar , int _AmbientDim>
Индекс Eigen::AlignedBox< _Scalar, _AmbientDim >::размер ( ) const
inline
Возвращает
размерность, в которой находится прямоугольник

EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE()

шаблон<typename _Scalar , int _AmbientDim>
const Eigen::AlignedBox< _Scalar, _AmbientDim >::EIGEN_EXPR_BINARYOP_SCALAR_RETURN_TYPE ( VectorTypeSum ,
RealScalar ,
частное
) const
inline
Возвращает
центр прямоугольника

extend() [1/2]

шаблон<typename _Scalar , int _AmbientDim>
AlignedBox& Eigen::AlignedBox< _Scalar, _AmbientDim >::extend ( const AlignedBox< _Scalar, _AmbientDim > & b )
inline

Расширяет *this таким образом, чтобы он содержал прямоугольник b, и возвращает ссылку на *this.

См. также
merged, extend(const MatrixBase&)

extend() [2/2]

шаблон<typename _Scalar , int _AmbientDim>
шаблон<typename Derived >
AlignedBox& Eigen::AlignedBox< _Scalar, _AmbientDim >::extend ( const MatrixBase< Derived > & p )
inline

Расширяет *this таким образом, чтобы он содержал точку p, и возвращает ссылку на *this.

См. также
extend(const AlignedBox&)

расстояниеДоВнещности() [1/2]

шаблон<typename _Scalar , int _AmbientDim>
НеЦелое Eigen::AlignedBox< _Scalar, _AmbientDim >::расстояниеДоВнещности ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline
Возвращает
расстояние между прямоугольниками b и *this, и ноль, если прямоугольники пересекаются.
См. также
squaredExteriorDistance(const AlignedBox&), exteriorDistance(const MatrixBase&)

расстояниеДоВнещности() [2/2]

шаблон<typename _Scalar , int _AmbientDim>
шаблон<typename Derived >
НеЦелое Eigen::AlignedBox< _Scalar, _AmbientDim >::расстояниеДоВнещности ( const MatrixBase< Derived > & p ) const
inline
Возвращает
расстояние между точкой p и прямоугольником *this, и ноль, если p находится внутри прямоугольника.
См. также
squaredExteriorDistance(const MatrixBase&), exteriorDistance(const AlignedBox&)

пересечение()

шаблон<typename _Scalar , int _AmbientDim>
AlignedBox Eigen::AlignedBox< _Scalar, _AmbientDim >::пересечение ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline

Возвращает AlignedBox, являющийся пересечением b и *this

Примечание
Если прямоугольники не пересекаются, полученный прямоугольник пуст.
См. также
intersects(), clamp, contains()

intersects()

шаблон<typename _Scalar , int _AmbientDim>
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::intersects ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline
Возвращает
true, если прямоугольник b пересекает прямоугольник *this.
См. также
пересечение, clamp

isApprox()

шаблон<typename _Scalar , int _AmbientDim>
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::isApprox ( const AlignedBox< _Scalar, _AmbientDim > & other,
const RealScalar & prec = ScalarTraits::dummy_precision()
) const
inline
Возвращает
true если *this приблизительно равен other, с точностью, определяемой prec.
См. также
MatrixBase::isApprox()

isEmpty()

шаблон<typename _Scalar , int _AmbientDim>
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::isEmpty ( ) const
inline
Возвращает
true, если прямоугольник пуст.
См. также
setEmpty

isNull()

шаблон<typename _Scalar , int _AmbientDim>
bool Eigen::AlignedBox< _Scalar, _AmbientDim >::isNull ( ) const
inline
Устарело:
используйте isEmpty()

max() [1/2]

шаблон<typename _Scalar , int _AmbientDim>
ТипВектора&() Eigen::AlignedBox< _Scalar, _AmbientDim >::max ( )
inline
Возвращает
непостоянную ссылку на максимальную вершину

max() [2/2]

шаблон<typename _Scalar , int _AmbientDim>
const VectorType&() Eigen::AlignedBox< _Scalar, _AmbientDim >::max ( ) const
inline
Возвращает
максимальную вершину

merged()

шаблон<typename _Scalar , int _AmbientDim>
AlignedBox Eigen::AlignedBox< _Scalar, _AmbientDim >::merged ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline

Возвращает AlignedBox, являющуюся объединением b и *this.

Примечание
Объединение с пустой коробкой может привести к коробке больше, чем *this.
См. также
extend(const AlignedBox&)

min() [1/2]

шаблон<typename _Scalar , int _AmbientDim>
VectorType&() Eigen::AlignedBox< _Scalar, _AmbientDim >::min ( )
inline
Возвращает
непостоянную ссылку на минимальную вершину

min() [2/2]

шаблон<typename _Scalar , int _AmbientDim>
const VectorType&() Eigen::AlignedBox< _Scalar, _AmbientDim >::min ( ) const
inline
Возвращает
минимальную вершину

sample()

шаблон<typename _Scalar , int _AmbientDim>
VectorType Eigen::AlignedBox< _Scalar, _AmbientDim >::sample ( ) const
inline
Возвращает
случайную точку внутри ограничивающей прямоугольной области, сгенерированную с равномерным распределением

setEmpty()

шаблон<typename _Scalar , int _AmbientDim>
void Eigen::AlignedBox< _Scalar, _AmbientDim >::setEmpty ( )
inline

Делает *this пустой коробкой.

См. также
isEmpty

setNull()

шаблон<typename _Scalar , int _AmbientDim>
void Eigen::AlignedBox< _Scalar, _AmbientDim >::setNull ( )
inline
Устаревшее:
используйте setEmpty()

sizes()

шаблон<typename _Scalar , int _AmbientDim>
const CwiseBinaryOp< internal::scalar_difference_op<Scalar,Scalar>, const VectorType, const VectorType> Eigen::AlignedBox< _Scalar, _AmbientDim >::sizes ( ) const
inline
Возвращает
длины сторон ограничивающей прямоугольной области. Обратите внимание, что эта функция не дает одинакового результата для целочисленных и плавающих типов скаляров: см.

squaredExteriorDistance() [1/2]

шаблон<typename Scalar , int AmbientDim>
Scalar Eigen::AlignedBox< Scalar, AmbientDim >::squaredExteriorDistance ( const AlignedBox< _Scalar, _AmbientDim > & b ) const
inline
Возвращает
квадрат расстояния между прямоугольными областями b и *this, и ноль, если области пересекаются.
См. также
exteriorDistance(const AlignedBox&), squaredExteriorDistance(const MatrixBase&)

squaredExteriorDistance() [2/2]

шаблон<typename Scalar , int AmbientDim>
шаблон<typename Derived >
Scalar Eigen::AlignedBox< Scalar, AmbientDim >::squaredExteriorDistance ( const MatrixBase< Derived > & p ) const
inline
Возвращает
квадрат расстояния между точкой p и прямоугольной областью *this, и ноль, если p находится внутри прямоугольной области.
См. также
exteriorDistance(const MatrixBase&), squaredExteriorDistance(const AlignedBox&)

transform() [1/2]

шаблон<typename _Scalar , int _AmbientDim>
шаблон<int Mode, int Options>
void Eigen::AlignedBox< _Scalar, _AmbientDim >::transform ( const Transform< Scalar, AmbientDimAtCompileTime, Mode, Options > & transform )
inline

Преобразует эту прямоугольную область с помощью transform и пересчитывает ее, чтобы она по-прежнему оставалась прямоугольной областью.

Примечание
Этот метод предоставляется по лицензии BSD (см. начало этого файла).

transform() [2/2]

шаблон<typename _Scalar , int _AmbientDim>
шаблон<int Mode, int Options>
void Eigen::AlignedBox< _Scalar, _AmbientDim >::transform ( const typename Transform< Scalar, AmbientDimAtCompileTime, Mode, Options >::TranslationType & translation )
inline

Специализация transform для чистого смещения.

transformed()

шаблон<typename _Scalar , int _AmbientDim>
шаблон<int Mode, int Options>
AlignedBox Eigen::AlignedBox< _Scalar, _AmbientDim >::transformed ( const Transform< Scalar, AmbientDimAtCompileTime, Mode, Options > & transform ) const
inline
Возвращает
копию *this преобразованную с помощью transform и пересчитанную, чтобы оставаться прямоугольной областью.

translate()

шаблон<typename _Scalar , int _AmbientDim>
шаблон<typename Derived >
AlignedBox& Eigen::AlignedBox< _Scalar, _AmbientDim >::translate ( const MatrixBase< Derived > & a_t )
inline

Смещает *this на вектор t и возвращает ссылку на *this.

translated()

шаблон<typename _Scalar , int _AmbientDim>
шаблон<typename Derived >
AlignedBox Eigen::AlignedBox< _Scalar, _AmbientDim >::translated ( const MatrixBase< Derived > & a_t ) const
inline
Возвращает
копию *this смещенную на вектор t.

volume()

шаблон<typename _Scalar , int _AmbientDim>
Scalar Eigen::AlignedBox< _Scalar, _AmbientDim >::volume ( ) const
inline
Возвращает
объём ограничивающей прямоугольной области

The documentation for this class was generated from the following file:
  • AlignedBox.h

© Eigen.
Licensed under the MPL2 License.
https://eigen.tuxfamily.org/dox/classEigen_1_1AlignedBox.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API