diff --git a/Assets/AWSIM/Scripts/Sensors/Gnss/GnssSensor.cs b/Assets/AWSIM/Scripts/Sensors/Gnss/GnssSensor.cs index 91f00e1e4..400960c33 100644 --- a/Assets/AWSIM/Scripts/Sensors/Gnss/GnssSensor.cs +++ b/Assets/AWSIM/Scripts/Sensors/Gnss/GnssSensor.cs @@ -56,10 +56,12 @@ public OutputData() float timer = 0; OutputData outputData = new OutputData(); Transform m_transform; + Transform envTransform; void Start() { m_transform = transform; + envTransform = Environment.Instance.transform; } void FixedUpdate() @@ -73,7 +75,7 @@ void FixedUpdate() timer = 0; // update mgrs position. - var unityPosition = m_transform.position; + var unityPosition = envTransform.InverseTransformPoint(m_transform.position); var rosPosition = ROS2Utility.UnityToRosPosition(unityPosition); outputData.MgrsPosition = rosPosition + Environment.Instance.MgrsOffsetPosition; // ros gnss sensor's pos + mgrs offset pos. outputData.GeoCoordinate = GeoCoordinateConverter.Cartesian2Geo(unityPosition, Environment.Instance.WorldOriginGeoCoordinate);