Android Open Source - GoogleDirectionsClient Polyline






From Project

Back to project page GoogleDirectionsClient.

License

The source code is released under:

Apache License

If you think the Android project GoogleDirectionsClient listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.manuelpeinado.googledirectionsclient;
// w w w .j a v a2 s  .c o m
import java.util.ArrayList;
import java.util.List;

import com.google.gson.annotations.SerializedName;

public class Polyline {
    @SerializedName("points")
    public String encodedPoints;
    
    public List<RoutePoint> decodePoints() {
        List<RoutePoint> poly = new ArrayList<RoutePoint>();
          int index = 0, len = encodedPoints.length();
          int lat = 0, lng = 0;

          while (index < len) {
              int b, shift = 0, result = 0;
              do {
                  b = encodedPoints.charAt(index++) - 63;
                  result |= (b & 0x1f) << shift;
                  shift += 5;
              } while (b >= 0x20);
              int dlat = ((result & 1) != 0 ? ~(result >> 1) : (result >> 1));
              lat += dlat;
              shift = 0;
              result = 0;
              do {
                  b = encodedPoints.charAt(index++) - 63;
                  result |= (b & 0x1f) << shift;
                  shift += 5;
              } while (b >= 0x20);
              int dlng = ((result & 1) != 0 ? ~(result >> 1) : (result >> 1));
              lng += dlng;

              poly.add(new RoutePoint((double) lat / 1E5, (double) lng / 1E5));
          }
          return poly;
    }
    
}




Java Source Code List

com.manuelpeinado.googledirectionsclient.AddressFormatter.java
com.manuelpeinado.googledirectionsclient.Distance.java
com.manuelpeinado.googledirectionsclient.Duration.java
com.manuelpeinado.googledirectionsclient.GoogleDirectionsClient.java
com.manuelpeinado.googledirectionsclient.GoogleDirectionsResponseListener.java
com.manuelpeinado.googledirectionsclient.GoogleDirectionsResponse.java
com.manuelpeinado.googledirectionsclient.Leg.java
com.manuelpeinado.googledirectionsclient.Polyline.java
com.manuelpeinado.googledirectionsclient.Query.java
com.manuelpeinado.googledirectionsclient.RoutePoint.java
com.manuelpeinado.googledirectionsclient.Route.java
com.manuelpeinado.googledirectionsclient.Step.java
com.manuelpeinado.googledirectionsclient.demo.ActivityInfo.java
com.manuelpeinado.googledirectionsclient.demo.Common.java
com.manuelpeinado.googledirectionsclient.demo.DirectionsFragmentActivity.java
com.manuelpeinado.googledirectionsclient.demo.DirectionsServiceActivity.java
com.manuelpeinado.googledirectionsclient.demo.HomeActivity.java
com.manuelpeinado.googledirectionsclient.fragment.GoogleDirectionsFragment.java
com.manuelpeinado.googledirectionsclient.service.GoogleDirectionsService.java