Spec-Zone.ru › Eigen3

Eigen::PlainObjectBase

template<typename Derived>
class Eigen::PlainObjectBase< Derived >

Базовый класс для плотной матрицы и массивов.

Этот класс можно расширить с помощью механизма плагинов, описанного на странице Расширение MatrixBase (и других классов), определив препроцессорную метку EIGEN_PLAINOBJECTBASE_PLUGIN.

Параметры шаблона
Derived является типом производного класса, например, Matrix или Array
См. также
Иерархия классов
Inheritance graph
const Scalar & coeff (Index index) const
const Scalar & coeff (Index rowId, Index colId) const
Scalar & coeffRef (Index index)
const Scalar & coeffRef (Index index) const
Scalar & coeffRef (Index rowId, Index colId)
const Scalar & coeffRef (Index rowId, Index colId) const
void conservativeResize (Index rows, Index cols)
void conservativeResize (Index rows, NoChange_t)
void conservativeResize (Index size)
void conservativeResize (NoChange_t, Index cols)
template<typename OtherDerived >
void conservativeResizeLike (const DenseBase< OtherDerived > &other)
Scalar * data ()
const Scalar * data () const
template<typename OtherDerived >
Derived & lazyAssign (const DenseBase< OtherDerived > &other)
template<typename OtherDerived >
Derived & operator= (const EigenBase< OtherDerived > &other)
Копирует общее выражение other в *this. Подробнее...
Derived & operator= (const PlainObjectBase &other)
void resize (Index rows, Index cols)
void resize (Index rows, NoChange_t)
void resize (Index size)
void resize (NoChange_t, Index cols)
template<typename OtherDerived >
void resizeLike (const EigenBase< OtherDerived > &_other)
шаблон<typename OtherDerived >
PlainObjectBase (const DenseBase< OtherDerived > &other)
шаблон<typename OtherDerived >
PlainObjectBase (const EigenBase< OtherDerived > &other)
PlainObjectBase (const PlainObjectBase &other)
шаблон<typename OtherDerived >
PlainObjectBase (const ReturnByValue< OtherDerived > &other)
Конструктор копирования с вычислением на месте.
шаблон<typename... ArgTypes>
PlainObjectBase (const Scalar &a0, const Scalar &a1, const Scalar &a2, const Scalar &a3, const ArgTypes &... args)
Создаёт строку столбцового вектора фиксированного размера из произвольного числа коэффициентов. [c++11] Подробнее...
PlainObjectBase (const std::initializer_list< std::initializer_list< Scalar >> &list)
Создаёт матрицу или массив и инициализирует его элементами, заданными списком инициализации списков инициализации [c++11]

Это удобные функции, возвращающие объекты Map. Статические функции Map() возвращают невыровненные объекты Map, а функции AlignedMap() возвращают выровненные объекты Map и, следовательно, должны вызываться только с указателями на данные data, выровненными по 16 байтам.

Вот пример использования шагов:

Matrix4i A;
A << 1,  2,  3,  4,
     5,  6,  7,  8,
     9, 10, 11, 12,
    13, 14, 15, 16;
 
std::cout << Matrix2i::Map(&A(1,1),Stride<8,2>()) << std::endl;

Вывод:

 6  8
14 16
См. также
класс Map
Производное & setConstant (Index size, const Scalar &val)
Производное & setConstant (Index rows, Index cols, const Scalar &val)
Производное & setConstant (NoChange_t, Index cols, const Scalar &val)
Производное & setConstant (Index rows, NoChange_t, const Scalar &val)
Производное & setZero (Index size)
Производное & setZero (Index rows, Index cols)
Производное & setZero (NoChange_t, Index cols)
Производное & setZero (Index rows, NoChange_t)
Производное & setOnes (Index size)
Производное & setOnes (Index rows, Index cols)
Производное & setOnes (NoChange_t, Index cols)
Производное & setOnes (Index rows, NoChange_t)
Производное & setRandom (Index size)
Производное & setRandom (Index rows, Index cols)
Производное & setRandom (NoChange_t, Index cols)
Производное & setRandom (Index rows, NoChange_t)
шаблон<typename OtherDerived >
void _resize_to_match (const EigenBase< OtherDerived > &other)
шаблон<typename OtherDerived >
Производное & _set (const DenseBase< OtherDerived > &other)
Копирует значение выражения other в *this с автоматическим изменением размера. Подробнее...
шаблон<typename OtherDerived >
Производное & _set_noalias (const DenseBase< OtherDerived > &other)
шаблон<typename T0 , typename T1 >
void _init2 (Index rows, Index cols, typename internal::enable_if< Base::SizeAtCompileTime!=2, T0 >::type *=0)
шаблон<typename T0 , typename T1 >
void _init2 (const T0 &val0, const T1 &val1, typename internal::enable_if< Base::SizeAtCompileTime==2, T0 >::type *=0)
шаблон<typename T0 , typename T1 >
void _init2 (const Index &val0, const Index &val1, typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< T0, Index >::value) &&(internal::is_same< T1, Index >::value) &&Base::SizeAtCompileTime==2, T1 >::type *=0)
шаблон<typename T >
void _init1 (Index size, typename internal::enable_if<(Base::SizeAtCompileTime!=1||!internal::is_convertible< T, Scalar >::value) &&((!internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value||Base::SizeAtCompileTime==Dynamic)), T >::type *=0)
шаблон<typename T >
void _init1 (const Scalar &val0, typename internal::enable_if< Base::SizeAtCompileTime==1 &&internal::is_convertible< T, Scalar >::value, T >::type *=0)
шаблон<typename T >
void _init1 (const Index &val0, typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< Index, T >::value) &&Base::SizeAtCompileTime==1 &&internal::is_convertible< T, Scalar >::value, T * >::type *=0)
шаблон<typename T >
void _init1 (const Scalar *data)
шаблон<typename T , typename OtherDerived >
void _init1 (const DenseBase< OtherDerived > &other)
шаблон<typename T >
void _init1 (const Derived &other)
template<typename T , typename OtherDerived >
void _init1 (const EigenBase< OtherDerived > &other)
template<typename T , typename OtherDerived >
void _init1 (const ReturnByValue< OtherDerived > &other)
template<typename T , typename OtherDerived , int ColsAtCompileTime>
void _init1 (const RotationBase< OtherDerived, ColsAtCompileTime > &r)
template<typename T >
void _init1 (const Scalar &val0, typename internal::enable_if< Base::SizeAtCompileTime!=Dynamic &&Base::SizeAtCompileTime!=1 &&internal::is_convertible< T, Scalar >::value &&internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value, T >::type *=0)
template<typename T >
void _init1 (const Index &val0, typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< Index, T >::value) &&Base::SizeAtCompileTime!=Dynamic &&Base::SizeAtCompileTime!=1 &&internal::is_convertible< T, Scalar >::value &&internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value, T * >::type *=0)
static ConstMapType Map (const Scalar *data)
static MapType Map (Scalar *data)
static ConstMapType Map (const Scalar *data, Index size)
static MapType Map (Scalar *data, Index size)
static ConstMapType Map (const Scalar *data, Index rows, Index cols)
static MapType Map (Scalar *data, Index rows, Index cols)
static ConstAlignedMapType MapAligned (const Scalar *data)
static AlignedMapType MapAligned (Scalar *data)
static ConstAlignedMapType MapAligned (const Scalar *data, Index size)
static AlignedMapType MapAligned (Scalar *data, Index size)
static ConstAlignedMapType MapAligned (const Scalar *data, Index rows, Index cols)
static AlignedMapType MapAligned (Scalar *data, Index rows, Index cols)
template<int Outer, int Inner>
static StridedConstMapType< Stride< Outer, Inner > >::type Map (const Scalar *data, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedMapType< Stride< Outer, Inner > >::type Map (Scalar *data, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedConstMapType< Stride< Outer, Inner > >::type Map (const Scalar *data, Index size, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedMapType< Stride< Outer, Inner > >::type Map (Scalar *data, Index size, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedConstMapType< Stride< Outer, Inner > >::type Map (const Scalar *data, Index rows, Index cols, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedMapType< Stride< Outer, Inner > >::type Map (Scalar *data, Index rows, Index cols, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedConstAlignedMapType< Stride< Outer, Inner > >::type MapAligned (const Scalar *data, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedAlignedMapType< Stride< Outer, Inner > >::type MapAligned (Scalar *data, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedConstAlignedMapType< Stride< Outer, Inner > >::type MapAligned (const Scalar *data, Index size, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedAlignedMapType< Stride< Outer, Inner > >::type MapAligned (Scalar *data, Index size, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedConstAlignedMapType< Stride< Outer, Inner > >::type MapAligned (const Scalar *data, Index rows, Index cols, const Stride< Outer, Inner > &stride)
template<int Outer, int Inner>
static StridedAlignedMapType< Stride< Outer, Inner > >::type MapAligned (Scalar *data, Index rows, Index cols, const Stride< Outer, Inner > &stride)

PlainObjectBase() [1/4]

template<typename Derived >
Eigen::PlainObjectBase< Derived >::PlainObjectBase ( const PlainObjectBase< Derived > & other )
inlineprotected

Конструктор копирования

PlainObjectBase() [2/4]

template<typename Derived >
template<typename... ArgTypes>
Eigen::PlainObjectBase< Derived >::PlainObjectBase ( const Scalar & a0,
const Scalar & a1,
const Scalar & a2,
const Scalar & a3,
const ArgTypes &... args
)
inlineprotected

Создаёт строку столбца вектора с фиксированным размером из произвольного количества коэффициентов. [c++11]

Это только для векторов (строчных или столбцовых векторов), т. е. матриц, у которых заранее известно, что они имеют либо одну строку, либо один столбец.

Этот конструктор предназначен для одномерного массива или векторов с более чем 4 коэффициентами. Существуют аналогичные конструкторы C++98 для массивов/векторов фиксированного размера, имеющих 1, 2, 3 или 4 коэффициента.

Предупреждение
Для построения столбцового (соответственно, строчного) вектора фиксированной длины количество значений, переданных в этот конструктор, должно совпадать с фиксированным количеством строк (соответственно, столбцов) *this.

PlainObjectBase() [3/4]

template<typename Derived >
template<typename OtherDerived >
Eigen::PlainObjectBase< Derived >::PlainObjectBase ( const DenseBase< OtherDerived > & other )
inlineprotected
См. также
PlainObjectBase::operator=(const EigenBase<OtherDerived>&)

PlainObjectBase() [4/4]

template<typename Derived >
template<typename OtherDerived >
Eigen::PlainObjectBase< Derived >::PlainObjectBase ( const EigenBase< OtherDerived > & other )
inlineprotected
См. также
PlainObjectBase::operator=(const EigenBase<OtherDerived>&)

_init1() [1/11]

template<typename Derived >
template<typename T , typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::_init1 ( const DenseBase< OtherDerived > & other )
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых векторов), т. е. матриц, у которых заранее известно, что они имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [2/11]

template<typename Derived >
template<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Derived & other )
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых векторов), т. е. матриц, у которых заранее известно, что они имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [3/11]

шаблон<typename Derived >
шаблон<typename T , typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::_init1 ( const EigenBase< OtherDerived > & other )
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [4/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Index & val0,
typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< Index, T >::value) &&Base::SizeAtCompileTime!=Dynamic &&Base::SizeAtCompileTime!=1 &&internal::is_convertible< T, Scalar >::value &&internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value, T * >::type * = 0
)
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [5/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Index & val0,
typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< Index, T >::value) &&Base::SizeAtCompileTime==1 &&internal::is_convertible< T, Scalar >::value, T * >::type * = 0
)
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [6/11]

шаблон<typename Derived >
шаблон<typename T , typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::_init1 ( const ReturnByValue< OtherDerived > & other )
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [7/11]

шаблон<typename Derived >
шаблон<typename T , typename OtherDerived , int ColsAtCompileTime>
void Eigen::PlainObjectBase< Derived >::_init1 ( const RotationBase< OtherDerived, ColsAtCompileTime > & r )
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [8/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Scalar & val0,
typename internal::enable_if< Base::SizeAtCompileTime!=Dynamic &&Base::SizeAtCompileTime!=1 &&internal::is_convertible< T, Scalar >::value &&internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value, T >::type * = 0
)
inlineprotected

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), то есть матриц, у которых размер известен на этапе компиляции и имеет одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [9/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Scalar & val0,
typename internal::enable_if< Base::SizeAtCompileTime==1 &&internal::is_convertible< T, Scalar >::value, T >::type * = 0
)
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [10/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( const Scalar * data )
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init1() [11/11]

шаблон<typename Derived >
шаблон<typename T >
void Eigen::PlainObjectBase< Derived >::_init1 ( Index size,
typename internal::enable_if<(Base::SizeAtCompileTime!=1||!internal::is_convertible< T, Scalar >::value) &&((!internal::is_same< typename internal::traits< Derived >::XprKind, ArrayXpr >::value||Base::SizeAtCompileTime==Dynamic)), T >::type * = 0
)
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init2() [1/3]

шаблон<typename Derived >
шаблон<typename T0 , typename T1 >
void Eigen::PlainObjectBase< Derived >::_init2 ( const Index & val0,
const Index & val1,
typename internal::enable_if<(!internal::is_same< Index, Scalar >::value) &&(internal::is_same< T0, Index >::value) &&(internal::is_same< T1, Index >::value) &&Base::SizeAtCompileTime==2, T1 >::type * = 0
)
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init2() [2/3]

шаблон<typename Derived >
шаблон<typename T0 , typename T1 >
void Eigen::PlainObjectBase< Derived >::_init2 ( const T0 & val0,
const T1 & val1,
typename internal::enable_if< Base::SizeAtCompileTime==2, T0 >::type * = 0
)
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_init2() [3/3]

шаблон<typename Derived >
шаблон<typename T0 , typename T1 >
void Eigen::PlainObjectBase< Derived >::_init2 ( Index rows,
Index cols,
typename internal::enable_if< Base::SizeAtCompileTime!=2, T0 >::type * = 0
)
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, размер которых известен во время компиляции и которые имеют либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_resize_to_match()

template<typename Derived >
template<typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::_resize_to_match ( const EigenBase< OtherDerived > & other )
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые в момент компиляции известны как имеющие либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

_set()

template<typename Derived >
template<typename OtherDerived >
Derived& Eigen::PlainObjectBase< Derived >::_set ( const DenseBase< OtherDerived > & other )
inlineprotected

Копирует значение выражения other в *this с автоматическим изменением размера.

*this может быть изменен на размер other. Если *this была нулевая матрица (еще не инициализирована), она будет инициализирована.

Обратите внимание, что копирование строкового вектора в вектор (и наоборот) разрешено. Изменение размера, если таковое требуется, выполняется соответствующим образом, так что строковые векторы остаются строковыми векторами, а векторы - векторами.

См. также
operator=(const MatrixBase<OtherDerived>&), _set_noalias()

_set_noalias()

template<typename Derived >
template<typename OtherDerived >
Derived& Eigen::PlainObjectBase< Derived >::_set_noalias ( const DenseBase< OtherDerived > & other )
inlineprotected

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые в момент компиляции известны как имеющие либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

coeff() [1/2]

template<typename Derived >
const Scalar& Eigen::PlainObjectBase< Derived >::coeff ( Index index ) const
inline

Это перегруженная версия DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const, предоставленная для пропуска создания оценщика выражения, что экономит усилия при компиляции.

См. DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const для получения подробной информации.

coeff() [2/2]

template<typename Derived >
const Scalar& Eigen::PlainObjectBase< Derived >::coeff ( Index rowId,
Index colId
) const
inline

Это перегруженная версия DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index,Index) const, предоставленная для пропуска создания оценщика выражения, что экономит усилия при компиляции.

См. DenseCoeffsBase<Derived,ReadOnlyAccessors>::coeff(Index) const для получения подробной информации.

coeffRef() [1/4]

template<typename Derived >
Scalar& Eigen::PlainObjectBase< Derived >::coeffRef ( Index index )
inline

Это перегруженная версия DenseCoeffsBase<Derived,WriteAccessors>::coeffRef(Index) const, предоставленная для пропуска создания оценщика выражения, что экономит усилия при компиляции.

См. DenseCoeffsBase<Derived,WriteAccessors>::coeffRef(Index) const для получения подробной информации.

coeffRef() [2/4]

template<typename Derived >
const Scalar& Eigen::PlainObjectBase< Derived >::coeffRef ( Index index ) const
inline

Это константная версия coeffRef(Index), которая является синонимом coeff(Index). Предоставляется для удобства.

coeffRef() [3/4]

template<typename Derived >
Scalar& Eigen::PlainObjectBase< Derived >::coeffRef ( Index rowId,
Index colId
)
inline

Это перегруженная версия DenseCoeffsBase<Derived,WriteAccessors>::coeffRef(Index,Index) const, предоставленная для пропуска создания оценщика выражения, что экономит усилия при компиляции.

См. DenseCoeffsBase<Derived,WriteAccessors>::coeffRef(Index,Index) const для получения подробной информации.

coeffRef() [4/4]

template<typename Derived >
const Scalar& Eigen::PlainObjectBase< Derived >::coeffRef ( Index rowId,
Index colId
) const
inline

Это константная версия coeffRef(Index,Index), которая является синонимом coeff(Index,Index). Предоставляется для удобства.

conservativeResize() [1/4]

template<typename Derived >
void Eigen::PlainObjectBase< Derived >::conservativeResize ( Index rows,
Index cols
)
inline

Изменяет размер матрицы на rows x cols, сохраняя старые значения.

Метод предназначен для матриц динамического размера. Если вы хотите только изменить количество строк и/или столбцов, вы можете использовать conservativeResize(NoChange_t, Index) или conservativeResize(Index, NoChange_t).

Матрицы изменяют размер относительно верхнего левого элемента. В случае, если значения необходимо добавить в матрицу, они будут неинициализированы.

conservativeResize() [2/4]

шаблон<typename Derived >
void Eigen::PlainObjectBase< Derived >::conservativeResize ( Index rows,
NoChange_t
)
inline

Изменяет размер матрицы на rows x cols, при этом старые значения остаются неизменными.

В отличие от conservativeResize(Index rows, Index cols), этот вариант оставляет количество столбцов неизменным.

В случае увеличения матрицы новые строки будут неинициализированы.

conservativeResize() [3/4]

шаблон<typename Derived >
void Eigen::PlainObjectBase< Derived >::conservativeResize ( Index size )
inline

Изменяет размер вектора на size, сохраняя старые значения.

Это только для векторов (строковых или столбцовых), т.е. матриц, размер которых известен на этапе компиляции и которые имеют одну строку или один столбец. Этот метод не работает для частично динамических матриц, когда статическая размерность отличается от 1. Например, он не будет работать с Matrix<double, 2, Dynamic>.

При добавлении значений они будут неинициализированы.

conservativeResize() [4/4]

шаблон<typename Derived >
void Eigen::PlainObjectBase< Derived >::conservativeResize ( NoChange_t ,
Index cols
)
inline

Изменяет размер матрицы на rows x cols, при этом старые значения остаются неизменными.

В отличие от conservativeResize(Index rows, Index cols), этот вариант оставляет количество строк неизменным.

В случае увеличения матрицы новые столбцы будут неинициализированы.

conservativeResizeLike()

шаблон<typename Derived >
шаблон<typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::conservativeResizeLike ( const DenseBase< OtherDerived > & other )
inline

Изменяет размер матрицы на rows x cols other, при этом старые значения остаются неизменными.

Метод предназначен для матриц с динамическим размером. Если нужно изменить только количество строк и/или столбцов, можно использовать conservativeResize(NoChange_t, Index) или conservativeResize(Index, NoChange_t).

Матрицы изменяют размер относительно верхнего левого элемента. В случае необходимости добавления значений в матрицу, они будут скопированы из other.

data() [1/2]

шаблон<typename Derived >
Scalar* Eigen::PlainObjectBase< Derived >::data ( )
inline
Возвращает
указатель на массив данных этой матрицы

data() [2/2]

шаблон<typename Derived >
const Scalar* Eigen::PlainObjectBase< Derived >::data ( ) const
inline
Возвращает
постоянный указатель на массив данных этой матрицы

lazyAssign()

шаблон<typename Derived >
шаблон<typename OtherDerived >
Derived& Eigen::PlainObjectBase< Derived >::lazyAssign ( const DenseBase< OtherDerived > & other )
inline
См. также
MatrixBase::lazyAssign()

Map() [1/12]

шаблон<typename Derived >
static ConstMapType Eigen::PlainObjectBase< Derived >::Map ( const Scalar * data )
inlinestatic

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении заданному значению val.

Это только для векторов (строковых или столбцовых), т.е. матриц, размер которых известен на этапе компиляции и которые имеют одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

Map() [2/12]

шаблон<typename Derived >
шаблон<int Outer, int Inner>
static StridedConstMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::Map ( const Scalar * data,
const Stride< Outer, Inner > & stride
)
inlinestatic

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении заданному значению val.

Это только для векторов (строковых или столбцовых), т.е. матриц, размер которых известен на этапе компиляции и которые имеют одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

Map() [3/12]

шаблон<typename Derived >
static ConstMapType Eigen::PlainObjectBase< Derived >::Map ( const Scalar * data,
Index rows,
Index cols
)
inlinestatic

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении заданному значению val.

Это только для векторов (строковых или столбцовых), т.е. матриц, размер которых известен на этапе компиляции и которые имеют одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

Map() [4/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedConstMapType<Шаг<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::Map ( const Скаляр * данные,
Индекс строки,
Индекс столбцы,
const Шаг< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [5/12]

шаблон<typename Производное >
статический ConstMapType Eigen::PlainObjectBase< Производное >::Map ( const Скаляр * данные,
Индекс размер
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [6/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedConstMapType<Шаг<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::Map ( const Скаляр * данные,
Индекс размер,
const Шаг< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [7/12]

шаблон<typename Производное >
статический MapType Eigen::PlainObjectBase< Производное >::Map ( Скаляр * данные )
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [8/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedMapType<Шаг<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::Map ( Скаляр * данные,
const Шаг< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [9/12]

шаблон<typename Производное >
статический MapType Eigen::PlainObjectBase< Производное >::Map ( Скаляр * данные,
Индекс строки,
Индекс столбцы
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это только для векторов (строки или столбцы), т. е. матриц, которые известны на этапе компиляции как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Скаляр&), setConstant(Индекс,Индекс,const Скаляр&), класс CwiseNullaryOp, MatrixBase::Constant(const Скаляр&)

Map() [10/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedMapType<Stride<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::Map ( Scalar * данные,
Индекс строки,
Индекс столбцы,
const Stride< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

Map() [11/12]

шаблон<typename Производное >
статический MapType Eigen::PlainObjectBase< Производное >::Map ( Scalar * данные,
Индекс размер
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

Map() [12/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedMapType<Stride<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::Map ( Scalar * данные,
Индекс размер,
const Stride< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [1/12]

шаблон<typename Производное >
статический ConstAlignedMapType Eigen::PlainObjectBase< Производное >::MapAligned ( const Scalar * данные )
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [2/12]

шаблон<typename Производное >
шаблон<int Внешнее, int Внутреннее>
статический StridedConstAlignedMapType<Stride<Внешнее, Внутреннее> >::type Eigen::PlainObjectBase< Производное >::MapAligned ( const Scalar * данные,
const Stride< Внешнее, Внутреннее > & шаг
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [3/12]

шаблон<typename Производное >
статический ConstAlignedMapType Eigen::PlainObjectBase< Производное >::MapAligned ( const Scalar * данные,
Индекс строки,
Индекс столбцы
)
inlineстатический

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это предназначено только для векторов (строчных или столбцовых), то есть для матриц, у которых количество строк или столбцов известно на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [4/12]

template<typename Derived >
template<int Outer, int Inner>
static StridedConstAlignedMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::MapAligned ( const Scalar * данные,
Индекс строки,
Индекс столбцы,
const Stride< Outer, Inner > & шаг
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [5/12]

template<typename Derived >
static ConstAlignedMapType Eigen::PlainObjectBase< Derived >::MapAligned ( const Scalar * данные,
Индекс размер
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [6/12]

template<typename Derived >
template<int Outer, int Inner>
static StridedConstAlignedMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::MapAligned ( const Scalar * данные,
Индекс размер,
const Stride< Outer, Inner > & шаг
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [7/12]

template<typename Derived >
static AlignedMapType Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные )
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [8/12]

template<typename Derived >
template<int Outer, int Inner>
static StridedAlignedMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные,
const Stride< Outer, Inner > & шаг
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [9/12]

template<typename Derived >
static AlignedMapType Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные,
Индекс строки,
Индекс столбцы
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение значение.

Это только для векторов (строковых или столбцовых векторов), т.е. матриц, которые известны на этапе компиляции, чтобы иметь одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [10/12]

template<typename Derived >
template<int Outer, int Inner>
static StridedAlignedMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные,
Индекс строки,
Индекс столбцы,
const Stride< Outer, Inner > & шаг
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это применимо только для векторов (строчных или столбцовых), т.е. матриц, у которых размерность строки или столбца известна на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [11/12]

template<typename Derived >
static AlignedMapType Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные,
Индекс размер
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это применимо только для векторов (строчных или столбцовых), т.е. матриц, у которых размерность строки или столбца известна на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

MapAligned() [12/12]

template<typename Derived >
template<int Outer, int Inner>
static StridedAlignedMapType<Stride<Outer, Inner> >::type Eigen::PlainObjectBase< Derived >::MapAligned ( Scalar * данные,
Индекс размер,
const Stride< Outer, Inner > & шаг
)
inlinestatic

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении на заданное значение val.

Это применимо только для векторов (строчных или столбцовых), т.е. матриц, у которых размерность строки или столбца известна на этапе компиляции.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Индекс,Индекс,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

operator=() [1/2]

template<typename Derived >
template<typename OtherDerived >
Derived& Eigen::PlainObjectBase< Derived >::operator= ( const EigenBase< OtherDerived > & другой )
inline

Копирует общее выражение другой в *this.

Выражение должно предоставлять функцию (с шаблоном) evalTo(Derived& dst) const, которая выполняет фактическую работу. Практически это позволяет любому пользователю создавать собственные специализированные матрицы без необходимости модифицировать MatrixBase

Возвращает
ссылку на *this.

operator=() [2/2]

template<typename Derived >
Derived& Eigen::PlainObjectBase< Derived >::operator= ( const PlainObjectBase< Derived > & другой )
inline

Это специальный случай оператора =. Его цель — предотвратить скрытие шаблонного оператора = стандартным оператором =.

resize() [1/4]

template<typename Derived >
void Eigen::PlainObjectBase< Derived >::resize ( Индекс строки,
Индекс столбцы
)
inline

Изменяет размер *this до матрицы строки × столбцы.

Этот метод предназначен для матриц с динамическим размером, хотя его можно вызвать для любой матрицы, если при этом фиксированные размеры остаются неизменными. Если вы хотите изменить только количество строк и/или столбцов, вы можете использовать resize(NoChange_t, Индекс), resize(Индекс, NoChange_t).

Если текущее количество коэффициентов *this точно соответствует произведению строки * столбцы, то выделение памяти не происходит, и текущие значения остаются неизменными. Во всех остальных случаях, включая уменьшение размера, данные перевыделяются, и все предыдущие значения теряются.

Пример:

MatrixXd m(2,3);
m << 1,2,3,4,5,6;
cout << "here's the 2x3 matrix m:" << endl << m << endl;
cout << "let's resize m to 3x2. This is a conservative resizing because 2*3==3*2." << endl;
m.resize(3,2);
cout << "here's the 3x2 matrix m:" << endl << m << endl;
cout << "now let's resize m to size 2x2. This is NOT a conservative resizing, so it becomes uninitialized:" << endl;
m.resize(2,2);
cout << m << endl;

Вывод:

here's the 2x3 matrix m:
1 2 3
4 5 6
let's resize m to 3x2. This is a conservative resizing because 2*3==3*2.
here's the 3x2 matrix m:
1 5
4 3
2 6
now let's resize m to size 2x2. This is NOT a conservative resizing, so it becomes uninitialized:
0 0
0 0
См. также
resize(Индекс) для векторов, resize(NoChange_t, Индекс), resize(Индекс, NoChange_t)

resize() [2/4]

template<typename Derived >
void Eigen::PlainObjectBase< Derived >::resize ( Индекс строки,
NoChange_t
)
inline

Изменяет размер матрицы, изменяя только количество строк. Для параметра типа NoChange_t просто передайте специальное значение NoChange , как в примере ниже.

Пример:

MatrixXd m(3,4);
m.resize(5, NoChange);
cout << "m: " << m.rows() << " rows, " << m.cols() << " cols" << endl;

Вывод:

m: 5 rows, 4 cols
См. также
resize(Индекс,Индекс)

resize() [3/4]

template<typename Derived >
void Eigen::PlainObjectBase< Derived >::resize ( Индекс размер )
inline

Изменяет размер *this на вектор длины размер

Это применимо только для векторов (строчных или столбцовых), т.е. матриц, у которых размерность строки или столбца известна на этапе компиляции. Этот метод не работает для частично динамических матриц, когда статическая размерность отличается от 1. Например, он не будет работать с Matrix<double, 2, Dynamic>.

Пример:

VectorXd v(10);
v.resize(3);
RowVector3d w;
w.resize(3); // this is legal, but has no effect
cout << "v: " << v.rows() << " rows, " << v.cols() << " cols" << endl;
cout << "w: " << w.rows() << " rows, " << w.cols() << " cols" << endl;

Вывод:

v: 3 rows, 1 cols
w: 1 rows, 3 cols
См. также
resize(Индекс,Индекс), resize(NoChange_t, Индекс), resize(Индекс, NoChange_t)

resize() [4/4]

шаблон<typename Derived >
void Eigen::PlainObjectBase< Derived >::resize ( NoChange_t ,
Index cols
)
inline

Изменяет размер матрицы, изменяя только количество столбцов. Для параметра типа NoChange_t просто передайте специальное значение NoChange, как показано в примере ниже.

Пример:

MatrixXd m(3,4);
m.resize(NoChange, 5);
cout << "m: " << m.rows() << " rows, " << m.cols() << " cols" << endl;

Вывод:

m: 3 rows, 5 cols
См. также
resize(Index,Index)

resizeLike()

шаблон<typename Derived >
шаблон<typename OtherDerived >
void Eigen::PlainObjectBase< Derived >::resizeLike ( const EigenBase< OtherDerived > & _other )
inline

Изменяет размер *this так, чтобы он соответствовал размерам other. Учитывает все необходимые проверки.

Обратите внимание, что копирование строчной матрицы в вектор (и наоборот) разрешено. Изменение размера, если необходимо, выполняется соответствующим образом, так что строчные матрицы остаются строчными, а векторы — векторами.

setConstant() [1/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setConstant ( Index rows,
Index cols,
const Scalar & val
)
inline

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в заданное значение val.

Параметры
rows новое количество строк
cols новое количество столбцов
val значение, в которое устанавливаются все коэффициенты

Пример:

MatrixXf m;
m.setConstant(3, 3, 5);
cout << m << endl;

Вывод:

5 5 5
5 5 5
5 5 5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

setConstant() [2/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setConstant ( Index rows,
NoChange_t ,
const Scalar & val
)
inline

Изменяет размер до заданного размера, изменяя только количество строк, и устанавливает все коэффициенты в этом выражении в заданное значение val. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

setConstant() [3/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setConstant ( Index size,
const Scalar & val
)
inline

Изменяет размер до заданного size и устанавливает все коэффициенты в этом выражении в заданное значение val.

Это только для векторов (строчных или столбцовых), т.е. матриц, которые в момент компиляции известны как имеющие одну строку или один столбец.

Пример:

VectorXf v;
v.setConstant(3, 5);
cout << v << endl;

Вывод:

5
5
5
См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

setConstant() [4/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setConstant ( NoChange_t ,
Index cols,
const Scalar & val
)
inline

Изменяет размер до заданного размера, изменяя только количество столбцов, и устанавливает все коэффициенты в этом выражении в заданное значение val. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
MatrixBase::setConstant(const Scalar&), setConstant(Index,const Scalar&), класс CwiseNullaryOp, MatrixBase::Constant(const Scalar&)

setOnes() [1/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setOnes ( Index rows,
Index cols
)
inline

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в единицу.

Параметры
rows новое количество строк
cols новое количество столбцов

Пример:

MatrixXf m;
m.setOnes(3, 3);
cout << m << endl;

Вывод:

1 1 1
1 1 1
1 1 1
См. также
MatrixBase::setOnes(), setOnes(Index), класс CwiseNullaryOp, MatrixBase::Ones()

setOnes() [2/4]

шаблон<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setOnes ( Index rows,
NoChange_t
)
inline

Изменяет размер до заданного размера, изменяя только количество строк, и устанавливает все коэффициенты в этом выражении в единицу. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
MatrixBase::setOnes(), setOnes(Index), setOnes(Index, Index), setOnes(NoChange_t, Index), класс CwiseNullaryOp, MatrixBase::Ones()

setOnes() [3/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setOnes ( Index newSize )
inline

Изменяет размер на заданный newSize и устанавливает все коэффициенты в этом выражении в единицу.

Это только для векторов (строковых или столбцовых), т.е. матриц, которые в момент компиляции известны как имеющие либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setOnes(3);
cout << v << endl;

Вывод:

1
1
1
См. также
MatrixBase::setOnes(), setOnes(Index,Index), класс CwiseNullaryOp, MatrixBase::Ones()

setOnes() [4/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setOnes ( NoChange_t ,
Index cols
)
inline

Изменяет размер до заданного размера, изменяя только количество столбцов, и устанавливает все коэффициенты в этом выражении в единицу. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
MatrixBase::setOnes(), setOnes(Index), setOnes(Index, Index), setOnes(Index, NoChange_t), класс CwiseNullaryOp, MatrixBase::Ones()

setRandom() [1/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setRandom ( Index rows,
Index cols
)
inline

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении случайными значениями.

Числа равномерно распределяются по всему диапазону определения для целочисленных типов и в диапазоне [-1:1] для чисел с плавающей точкой.

Предупреждение
Эта функция не является потокобезопасной.
Параметры
rows новое количество строк
cols новое количество столбцов

Пример:

MatrixXf m;
m.setRandom(3, 3);
cout << m << endl;

Вывод:

  0.68  0.597  -0.33
-0.211  0.823  0.536
 0.566 -0.605 -0.444
См. также
DenseBase::setRandom(), setRandom(Index), класс CwiseNullaryOp, DenseBase::Random()

setRandom() [2/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setRandom ( Index rows,
NoChange_t
)
inline

Изменяет размер до заданного размера, изменяя только количество строк, и устанавливает все коэффициенты в этом выражении случайными значениями. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

Числа равномерно распределяются по всему диапазону определения для целочисленных типов и в диапазоне [-1:1] для чисел с плавающей точкой.

Предупреждение
Эта функция не является потокобезопасной.
См. также
DenseBase::setRandom(), setRandom(Index), setRandom(NoChange_t, Index), класс CwiseNullaryOp, DenseBase::Random()

setRandom() [3/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setRandom ( Index newSize )
inline

Изменяет размер на заданный newSize и устанавливает все коэффициенты в этом выражении случайными значениями.

Числа равномерно распределяются по всему диапазону определения для целочисленных типов и в диапазоне [-1:1] для чисел с плавающей точкой.

Это только для векторов (строковых или столбцовых), т.е. матриц, которые в момент компиляции известны как имеющие либо одну строку, либо один столбец.

Предупреждение
Эта функция не является потокобезопасной.

Пример:

VectorXf v;
v.setRandom(3);
cout << v << endl;

Вывод:

  0.68
-0.211
 0.566
См. также
DenseBase::setRandom(), setRandom(Index,Index), класс CwiseNullaryOp, DenseBase::Random()

setRandom() [4/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setRandom ( NoChange_t ,
Index cols
)
inline

Изменяет размер до заданного размера, изменяя только количество столбцов, и устанавливает все коэффициенты в этом выражении случайными значениями. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

Числа равномерно распределяются по всему диапазону определения для целочисленных типов и в диапазоне [-1:1] для чисел с плавающей точкой.

Предупреждение
Эта функция не является потокобезопасной.
См. также
DenseBase::setRandom(), setRandom(Index), setRandom(Index, NoChange_t), класс CwiseNullaryOp, DenseBase::Random()

setZero() [1/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setZero ( Index rows,
Index cols
)
inline

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в ноль.

Параметры
rows новое количество строк
cols новое количество столбцов

Пример:

MatrixXf m;
m.setZero(3, 3);
cout << m << endl;

Вывод:

0 0 0
0 0 0
0 0 0
См. также
DenseBase::setZero(), setZero(Index), класс CwiseNullaryOp, DenseBase::Zero()

setZero() [2/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setZero ( Index rows,
NoChange_t
)
inline

Изменяет размер до заданного размера, изменяя только количество строк, и устанавливает все коэффициенты в этом выражении в ноль. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
DenseBase::setZero(), setZero(Index), setZero(Index, Index), setZero(NoChange_t, Index), класс CwiseNullaryOp, DenseBase::Zero()

setZero() [3/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setZero ( Index newSize )
inline

Изменяет размер до заданного размера и устанавливает все коэффициенты в этом выражении в ноль.

Это только для векторов (строковых или столбцовых векторов), т. е. матриц, чья размерность известна на этапе компиляции, и имеет либо одну строку, либо один столбец.

Пример:

VectorXf v;
v.setZero(3);
cout << v << endl;

Вывод:

0
0
0
См. также
DenseBase::setZero(), setZero(Index,Index), класс CwiseNullaryOp, DenseBase::Zero()

setZero() [4/4]

template<typename Derived >
Derived & Eigen::PlainObjectBase< Derived >::setZero ( NoChange_t ,
Index cols
)
inline

Изменяет размер до заданного размера, изменяя только количество столбцов, и устанавливает все коэффициенты в этом выражении в ноль. Для параметра типа NoChange_t просто передайте специальное значение NoChange.

См. также
DenseBase::setZero(), setZero(Index), setZero(Index, Index), setZero(Index, NoChange_t), класс CwiseNullaryOp, DenseBase::Zero()

Документация для этого класса была сгенерирована из следующих файлов:
  • PlainObjectBase.h
  • CwiseNullaryOp.h
  • Random.h

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

Spec-Zone.ru

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