From 1a450e72c633f0ca47e37af19824a9dac5fe3b67 Mon Sep 17 00:00:00 2001 From: Fabian Reister <fabian.reister@kit.edu> Date: Fri, 1 Oct 2021 10:59:32 +0200 Subject: [PATCH] EigenConverter: fixing ConvertToDynamicArray --- .../RobotAPI/libraries/aron/converter/eigen/EigenConverter.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/RobotAPI/libraries/aron/converter/eigen/EigenConverter.h b/source/RobotAPI/libraries/aron/converter/eigen/EigenConverter.h index 4a5a02e56..810693b3a 100644 --- a/source/RobotAPI/libraries/aron/converter/eigen/EigenConverter.h +++ b/source/RobotAPI/libraries/aron/converter/eigen/EigenConverter.h @@ -150,11 +150,11 @@ namespace armarx::aron::converter static Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic> ConvertToDynamicArray(const datanavigator::NDArrayNavigator& nav) { const auto dims = nav.getDimensions(); + ARMARX_CHECK_EQUAL(dims.size(), 2); using ArrayT = Eigen::Array<T, Eigen::Dynamic, Eigen::Dynamic>; - ArrayT ret; - memcpy(reinterpret_cast<unsigned char*>(ret.data()), nav.getData(), std::accumulate(std::begin(dims), std::end(dims), 1, std::multiplies<>())); + ArrayT ret = Eigen::Map<ArrayT>(reinterpret_cast<T*>(nav.getData()), dims.at(0), dims.at(1)); return ret; } -- GitLab