Einzelnen Beitrag anzeigen

MetalChris

Registriert seit: 10. Aug 2012
10 Beiträge
 
#1

Decompress Polyline Algorithmus

  Alt 13. Mai 2015, 19:49
Hallo,

ich möchte eine mit diesem Algorithmus enkodierte Polyline wieder dekodieren.

Leider hab ich nur folgenden Javascript gefunden:

Code:
//decode compressed route geometry
_decode: function(encoded, precision) {
   precision = Math.pow(10, -precision);
   var len = encoded.length, index=0, lat=0, lng = 0, array = [];
   while (index < len) {
      var b, shift = 0, result = 0;
      do {
         b = encoded.charCodeAt(index++) - 63;
         result |= (b & 0x1f) << shift;
         shift += 5;
      } while (b >= 0x20);
      var dlat = ((result & 1) ? ~(result >> 1) : (result >> 1));
      lat += dlat;
      shift = 0;
      result = 0;
      do {
         b = encoded.charCodeAt(index++) - 63;
         result |= (b & 0x1f) << shift;
         shift += 5;
      } while (b >= 0x20);
      var dlng = ((result & 1) ? ~(result >> 1) : (result >> 1));
      lng += dlng;
      //array.push( {lat: lat * precision, lng: lng * precision} );
      array.push( [lat * precision, lng * precision] );
   }
   return array;
}

};
Jemand eine Idee wie man dies am besten in Delphi lösen könnte?
  Mit Zitat antworten Zitat