Showing posts with label Google Maps. Show all posts
Showing posts with label Google Maps. Show all posts

Tuesday, January 3, 2017

Convert decimal coordinates to normal readable coordinates.

Sample input ::

FieldValue = 51.467696956223364, -0.1153564453125;


function GetStringCoordinate (FieldValue) {
    if (FieldValue != null && FieldValue != undefined && FieldValue != '') {
         
        var coordinateArray = FieldValue.split(',');
        if (coordinateArray.length == 2) {
            var latFloat = parseFloat(coordinateArray[0]);
            var lngFloat = parseFloat(coordinateArray[1]);

            //latitude formatting 
            var latCh = coordinateArray[0] > 0 ? 'N' : 'S';
            var latD = Math.trunc(coordinateArray[0]);
            var latM = Math.trunc(coordinateArray[0] * 60 % 60)
            var latS = Math.trunc((Math.abs(coordinateArray[0]) * 3600) % 60)
            var latStr = latD + "° " + latM + "′ " + latS + "″ " + latCh;

            //longitude formatting 
            var lngCh = coordinateArray[1] > 0 ? 'E' : 'W';
            var lngD = Math.trunc(coordinateArray[1]);
            var lngM = Math.trunc(coordinateArray[1] * 60 % 60)
            var lngS = Math.trunc((Math.abs(coordinateArray[1]) * 3600) % 60)
            var lngStr = lngD + "° " + lngM + "′ " + lngS + "″ " + lngCh;
        }

        return latStr + ', ' + lngStr;
    }

    return '';
};