From cb20679eddf29910da5a922a33af561442d23801 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Joan=20Vallv=C3=A9=20Navarro?= <jvallve@iri.upc.edu>
Date: Tue, 18 Oct 2022 14:41:32 +0200
Subject: [PATCH] changed a little bit the yaml params

---
 include/gnss/sensor/sensor_gnss.h | 6 +++++-
 src/sensor/sensor_gnss.cpp        | 4 +++-
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/include/gnss/sensor/sensor_gnss.h b/include/gnss/sensor/sensor_gnss.h
index fece26836..f0f148905 100644
--- a/include/gnss/sensor/sensor_gnss.h
+++ b/include/gnss/sensor/sensor_gnss.h
@@ -52,6 +52,7 @@ struct ParamsSensorGnss : public ParamsSensorBase
         bool yaw_fixed = true;
         bool translation_fixed = true;
         Eigen::Vector3d ENU_latlonalt = Eigen::Vector3d::Zero();
+        bool latlon_in_degrees = false;
 
 
         ~ParamsSensorGnss() override = default;
@@ -71,7 +72,10 @@ struct ParamsSensorGnss : public ParamsSensorBase
                 yaw_fixed          = _server.getParam<bool>(prefix + _unique_name + "/ENU/yaw_fixed");
                 translation_fixed  = _server.getParam<bool>(prefix + _unique_name + "/ENU/translation_fixed");
                 if (ENU_mode == "manual")
-                    ENU_latlonalt      = _server.getParam<Eigen::Vector3d>(prefix + _unique_name + "/ENU_latlonalt");
+                {
+                    ENU_latlonalt      = _server.getParam<Eigen::Vector3d>(prefix + _unique_name + "/ENU/latlonalt");
+                    latlon_in_degrees  = _server.getParam<bool>(prefix + _unique_name + "/ENU/latlon_in_degrees");
+                }
             }
             else if (ENU_mode != "ECEF")
             {
diff --git a/src/sensor/sensor_gnss.cpp b/src/sensor/sensor_gnss.cpp
index b049301a7..6ae5a98af 100644
--- a/src/sensor/sensor_gnss.cpp
+++ b/src/sensor/sensor_gnss.cpp
@@ -99,7 +99,9 @@ void SensorGnss::setEcefEnu(const Eigen::Vector3d& _ENU, bool _ECEF_coordinates)
     if (_ECEF_coordinates)
         GnssUtils::computeEnuEcefFromEcef(_ENU, R_ENU_ECEF_, t_ENU_ECEF_);
     else
-        GnssUtils::computeEnuEcefFromEcef(GnssUtils::latLonAltToEcef(_ENU), R_ENU_ECEF_, t_ENU_ECEF_);
+        GnssUtils::computeEnuEcefFromEcef(GnssUtils::latLonAltToEcef(_ENU, not params_->latlon_in_degrees), 
+                                          R_ENU_ECEF_, 
+                                          t_ENU_ECEF_);
 
     ENU_defined_ = true;
 
-- 
GitLab