From 2041ba3497647c279b1bd61a37f98042c1329cc7 Mon Sep 17 00:00:00 2001 From: "Loren M. Lang" Date: Wed, 5 Jan 2022 03:47:45 -0800 Subject: [PATCH] Longitude values were backwards and removed reduntant negative sign When using explicit cardinal directions, including a negative sign adds confusion. Also, the east and west hemispheres were backwards. Fixes issue #314 --- src/AprsPacket.scala | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/AprsPacket.scala b/src/AprsPacket.scala index 9254178..12d72ee 100644 --- a/src/AprsPacket.scala +++ b/src/AprsPacket.scala @@ -3,6 +3,8 @@ package org.aprsdroid.app import _root_.android.location.Location import _root_.net.ab0oo.aprs.parser._ +import scala.math.abs + object AprsPacket { val QRG_RE = ".*?(\\d{2,3}[.,]\\d{3,4}).*?".r @@ -72,9 +74,9 @@ object AprsPacket { } val DirectionsLatitude = "NS"; - val DirectionsLongitude = "WE"; + val DirectionsLongitude = "EW"; def formatDMS(coordinate : Float, nesw : String) = { - val dms = Location.convert(coordinate, Location.FORMAT_SECONDS).split(":") + val dms = Location.convert(abs(coordinate), Location.FORMAT_SECONDS).split(":") val nesw_idx = (coordinate < 0).compare(false) "%2s° %2s' %s\" %s".format(dms(0), dms(1), dms(2), nesw(nesw_idx)) }