Creating an Eigen matrix from an array with row-major order
可以将文章内容翻译成中文,广告屏蔽插件可能会导致该功能失效(如失效,请关闭广告屏蔽插件后再试): 问题: I have an array of doubles, and I want to create a 4-by-4 matrix using the Eigen library. I also want to specify that the data is stored in row-major order. How can I do this? I have tried the following, but it does not compile: double data[16]; Eigen::Matrix4d M = Eigen::Map<Eigen::Matrix4d>(data, 4, 4, Eigen::RowMajor); 回答1: You need to pass a row-major matrix type to Map, e.g.: Map<Matrix<double,4,4,RowMajor> > M(data); then you can use M as an Eigen matrix, and the values of data will be modified, e.g.: M = M.inverse(); If you want to