From 63344030ee97492444f69d8231ef0187278e6332 Mon Sep 17 00:00:00 2001 From: Morten Nielsen Date: Tue, 28 Jul 2020 20:44:48 -0700 Subject: [PATCH] Maintain precision of accuracy --- src/SampleApp.WinDesktop/NmeaLocationDataSourcer.cs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/SampleApp.WinDesktop/NmeaLocationDataSourcer.cs b/src/SampleApp.WinDesktop/NmeaLocationDataSourcer.cs index 94f1751..10624c0 100644 --- a/src/SampleApp.WinDesktop/NmeaLocationDataSourcer.cs +++ b/src/SampleApp.WinDesktop/NmeaLocationDataSourcer.cs @@ -43,7 +43,8 @@ namespace SampleApp.WinDesktop else if(message is NmeaParser.Messages.Gst gst) { Gst = gst; - m_Accuracy = Math.Sqrt(Gst.SigmaLatitudeError * Gst.SigmaLatitudeError + Gst.SigmaLongitudeError * Gst.SigmaLongitudeError); + int significantDigits = (int)Math.Ceiling(-Math.Log(Math.Min(Gst.SigmaLatitudeError%1, Gst.SigmaLongitudeError%1))); + m_Accuracy = Math.Round(Math.Sqrt(Gst.SigmaLatitudeError * Gst.SigmaLatitudeError + Gst.SigmaLongitudeError * Gst.SigmaLongitudeError), significantDigits); } else if (message is NmeaParser.Messages.Rmc rmc) {