7#include <Eigen/Geometry>
14std::string convert_to_string(
const T& value) {
15 return fmt::format(
"{}", value);
19std::string convert_to_string(
const std::vector<T2>& values) {
20 std::stringstream sst;
22 for (
int i = 0; i < values.size(); i++) {
26 sst << convert_to_string(values[i]);
33std::string convert_to_string(
const Eigen::Matrix<double, D, 1>& value) {
34 std::stringstream sst;
36 for (
int i = 0; i < value.size(); i++) {
40 sst << fmt::format(
"{:.6f}", value[i]);
47inline std::string convert_to_string(
const Eigen::Quaterniond& quat) {
48 return fmt::format(
"quat({:.6f},{:.6f},{:.6f},{:.6f})", quat.x(), quat.y(), quat.z(), quat.w());
52inline std::string convert_to_string(
const Eigen::Isometry3d& pose) {
53 const Eigen::Vector3d trans(pose.translation());
54 const Eigen::Quaterniond quat(pose.linear());
55 return fmt::format(
"se3({:.6f},{:.6f},{:.6f},{:.6f},{:.6f},{:.6f},{:.6f})", trans.x(), trans.y(), trans.z(), quat.x(), quat.y(), quat.z(), quat.w());