From 8914909972f144de8641ecc246c84540254c2c5a Mon Sep 17 00:00:00 2001 From: "Begerad, Stefan" Date: Wed, 14 Sep 2022 22:15:48 +0200 Subject: [PATCH] feat(leaflet): convert coordinates --- leaflet/app/pages/home.jsx | 20 ++++++++++++++++++-- 1 file changed, 18 insertions(+), 2 deletions(-) diff --git a/leaflet/app/pages/home.jsx b/leaflet/app/pages/home.jsx index 33b4b63..65edf8c 100644 --- a/leaflet/app/pages/home.jsx +++ b/leaflet/app/pages/home.jsx @@ -5,6 +5,10 @@ import Hello from '../components/hello'; import { FeedMessage } from '../../proto2js/js/gtfs-rt.js'; import Map from '../components/map/map'; import '../style.css'; +/**/ +function insertCharToString(str,indexPos,char){ + return str.substring(0, indexPos) + char + str.substring(indexPos); +}; const Home = () => { /*storage*/ const [vehPos, setVehPos] = useState([]); @@ -67,10 +71,22 @@ const Home = () => { if(longitude){ console.log(`getVehPos() longitude:${longitude} available`); } + //remove tailing dot + //match a dot when it is followed by a whitespace or the end of the string + /*A function to trim trailing dots*/ + /*TODO Is this precaution required?*/ + let latFormed = latitude.toString().replace(/\.+$/, ""); + //let latFormed = trimTrailingChars(latitude.toString(), '\.'); + //console.log(`getVehPos() latFormed:${latFormed}`); + latFormed=insertCharToString(latFormed,latFormed.length - 7,'.'); + console.log(`getVehPos() latFormed:${latFormed}`); + let lonFormed = longitude.toString().replace(/\.+$/, ""); + lonFormed=insertCharToString(lonFormed,lonFormed.length - 7,'.'); + console.log(`getVehPos() lonFormed:${lonFormed}`); const message={ routeId: route_id === undefined ? -1 : parseInt(route_id,10) || -2, - lat: latitude === undefined ? -360 : latitude, - lon: longitude === undefined ? -720 : longitude, + lat: latFormed === undefined ? -360 : latFormed, + lon: lonFormed === undefined ? -720 : lonFormed, }; messages.push(message); } else {