Tôi đã thấy nó được thực hiện trước đây nhưng tôi không thể nhớ cách khởi tạo hiệu quả một số Eigen::Vector
có độ dài đã biết với std::vector
có cùng độ dài. Dưới đây là một ví dụ điển hình:Khởi tạo Eigen :: vectơ với std :: vector
std::vector<double> v1 = {1.0, 2.0, 3.0};
Eigen::Vector3d v2; // Do I put it like this in here: v2(v1) ?
v2 << v1[0], v1[1], v1[2]; // I know you can do it like this but
// I am sure i have seen a one liner.
Tôi đã đọc kỹ this trang về khởi tạo ma trận tiên tiến nhưng không có một lời giải thích rõ ràng về các phương pháp để thực hiện thao tác này.
Hãy thử 'Eigen :: Vector3d v2 (v1. dữ liệu()); – soon
'Bản đồ v2 (v1.data(), 3)' –
Akavall