0
Я не могу понять, как преобразовать массив double [] в тип Eigen :: Matrix4d.Преобразование double [] в Eigen :: Matrix4d
Я пытаюсь, выполнив:
Eigen::Matrix4d transform = map<Eigen::Matrix4d>(M->data,M->nrows,M->ncols);
Где М: matd_t *M
typedef struct
{
int nrows, ncols;
double data[];
// double *data;
} matd_t;
Спасибо за любую помощь.
Обратите внимание, что вы можете назвать его для непосредственного использования ваших данных во время вычисления: 'Map transform (M-> data);' –
ggael
Кроме того, если вы хотите инициализировать матрицу (или вектор) фиксированного размера для значений из raw memory, вы можете использовать конструктор raw-pointer: 'Eigen :: Matrix4d transform (M-> data);' (это копирует значения вместо отображения). – chtz