Используя библиотеку Eigen C++, у меня есть Matrix3f A
, Vector4f b
и Vector4f c
. Я хочу создать Matrix4f M
из них. Я хочу, чтобы верхний 3-к-3 угол M
был A
, я хочу, чтобы конечный столбец M
был b
, и я хочу, чтобы нижний ряд M
был c
.Eigen: конкатенирующие матрицы и векторы
Я знаю, как это сделать, просто создав Matrix4f и назначив каждый элемент по отдельности. Но есть ли более элегантное решение, которое поддерживает Eigen?
Элегантный достаточно для меня, спасибо! – Karnivaurus
Что делать, если 'b' на самом деле является Vector3f? Можете ли вы по-прежнему назначать первые три элемента последнего столбца 'b', используя' m.col (3) = b', или 'b' должен быть Vector4f? – Karnivaurus
@ Karnivaurus Нет, они должны быть одного размера. Вместо этого вы можете указать 'm.block (0,3,3,1) = b;'. –