У меня есть четыре вектора столбца. Мне нужно добавить их, чтобы сделать четыре-четыре матрицы. Есть ли конструктор или что-то в этом роде?Как вы делаете матрицу из векторов в собственном?
10
A
ответ
17
Вы также можете добавить их, используя синтаксис запятой инициализатора:
m << v1, v2, v3, v4;
матрица м мну есть были правильно изменены в первую очередь.
3
Быстрая проверка на docs:
Vector4f v1(1,0,0,0);
Vector4f v2(0,1,0,0);
Vector4f v3(0,0,1,0);
Vector4f v4(0,0,0,1);
Matrix4f m;
m.row(0) = v1;
m.row(1) = v2;
m.row(2) = v3;
m.row(3) = v4;
std::cout << m << std::endl;
выход:
1,0,0,0
0,1,0,0
0,0,1,0
0,0,0,1
Eigen AWESOME. –
Выполняет ли это копирование векторов 'v1',' v2', 'v3' и' v4'? Возможно ли создать матрицу 'm', используя данные в векторах без их копирования? может быть, ссылка на const или что-то в этом роде? –
Да, все векторы копируются в 'm'. – ggael