diff --git a/.idea/misc.xml b/.idea/misc.xml index 711833a..6919f60 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -27,7 +27,7 @@ - + diff --git a/.idea/modules.xml b/.idea/modules.xml index aa41b78..052b3e2 100644 --- a/.idea/modules.xml +++ b/.idea/modules.xml @@ -3,11 +3,11 @@ - - + + - + \ No newline at end of file diff --git a/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/DrawRouteMaps.java b/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/DrawRouteMaps.java index 475494a..972ae86 100644 --- a/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/DrawRouteMaps.java +++ b/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/DrawRouteMaps.java @@ -5,6 +5,8 @@ import com.google.android.gms.maps.GoogleMap; import com.google.android.gms.maps.model.LatLng; +import java.util.ArrayList; + /** * Created by ocittwo on 11/14/16. * @@ -32,6 +34,13 @@ public DrawRouteMaps draw(LatLng origin, LatLng destination, GoogleMap googleMap return instance; } + public DrawRouteMaps draw(LatLng origin, LatLng destination, ArrayList waypoints, GoogleMap googleMap) { + String url_route = FetchUrl.getUrlWithWayPoints(origin, destination,waypoints); + DrawRoute drawRoute = new DrawRoute(googleMap); + drawRoute.execute(new String[]{url_route}); + return instance; + } + public static Context getContext() { return instance.context; } diff --git a/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/FetchUrl.java b/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/FetchUrl.java index 6e2b6e9..657e8ef 100644 --- a/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/FetchUrl.java +++ b/drawroutemap/src/main/java/com/ahmadrosid/lib/drawroutemap/FetchUrl.java @@ -2,6 +2,8 @@ import com.google.android.gms.maps.model.LatLng; +import java.util.ArrayList; + /** * Created by ocittwo on 11/14/16. * @@ -19,4 +21,18 @@ public static String getUrl(LatLng origin, LatLng dest) { String output = "json"; return "https://maps.googleapis.com/maps/api/directions/" + output + "?" + parameters; } + + public static String getUrlWithWayPoints(LatLng origin, LatLng dest, ArrayList waypoints) { + String str_origin = "origin=" + origin.latitude + "," + origin.longitude; + String str_dest = "destination=" + dest.latitude + "," + dest.longitude; + String str_waypoints = "waypoints=optimize:true|"; + for(LatLng latLng : waypoints){ + str_waypoints = str_waypoints + "via:" + latLng.latitude + "," + latLng.longitude + "|"; + } + String sensor = "sensor=false"; + String transit = "transit=walking"; + String parameters = str_origin + "&" + str_dest + "&" + str_waypoints + "&" + sensor + "&" + transit; + String output = "json"; + return "https://maps.googleapis.com/maps/api/directions/" + output + "?" + parameters; + } }