[PATCH 2/2] MainTab location coordinates displayed in ISO6709 format

Tim Wootton tim at tee-jay.demon.co.uk
Tue Dec 31 14:14:55 UTC 2013


changes the location coordinates display in the main tab
 to use ISO6709(2008) Annex D suggested format.

Signed-off-by: Tim Wootton <tim at tee-jay.demon.co.uk>
---
 qt-ui/maintab.cpp | 15 +++++++++------
 1 file changed, 9 insertions(+), 6 deletions(-)

diff --git a/qt-ui/maintab.cpp b/qt-ui/maintab.cpp
index 4fc543f..07c21b2 100644
--- a/qt-ui/maintab.cpp
+++ b/qt-ui/maintab.cpp
@@ -974,7 +974,8 @@ void MainTab::editWeightWidget(const QModelIndex& index)
 QString MainTab::printGPSCoords(int lat, int lon)
 {
 	unsigned int latdeg, londeg;
-	unsigned int ilatmin, ilonmin;
+	unsigned int latmin, lonmin;
+	double  latsec, lonsec;
 	QString lath, lonh, result;
 
 	if (!lat && !lon)
@@ -986,11 +987,13 @@ QString MainTab::printGPSCoords(int lat, int lon)
 	lon = abs(lon);
 	latdeg = lat / 1000000;
 	londeg = lon / 1000000;
-	ilatmin = (lat % 1000000) * 60;
-	ilonmin = (lon % 1000000) * 60;
-	result.sprintf("%s%u%s %2d.%05d\' , %s%u%s %2d.%05d\'",
-		       lath.toUtf8().data(), latdeg, UTF8_DEGREE, ilatmin / 1000000, (ilatmin % 1000000) / 10,
-		       lonh.toUtf8().data(), londeg, UTF8_DEGREE, ilonmin / 1000000, (ilonmin % 1000000) / 10);
+	latmin = (lat % 1000000) * 60;
+	lonmin = (lon % 1000000) * 60;
+	latsec = (latmin % 1000000) * 60;
+	lonsec = (lonmin % 1000000) * 60;
+	result.sprintf("%u%s%02d\'%06.3f\"%s %u%s%02d\'%06.3f\"%s",
+		       latdeg, UTF8_DEGREE, latmin / 1000000, latsec / 1000000, lath.toUtf8().data(),
+		       londeg, UTF8_DEGREE, lonmin / 1000000, lonsec / 1000000, lonh.toUtf8().data());
 	return result;
 }
 
-- 
1.8.5.2



More information about the subsurface mailing list