Get points from a Gdirections route - google-maps

I'm trying to get a collection of points (latitude,longitude) between 2 adresses. The points needs to be on a valid tracfic route. I currently use Gdirections to create a route between 2 adresses. Is there a method to get somepoints allong this route? To me it seems impossible...
thx in advance!

You can get the returned polyline using GDirections.getPolyline() Then you can use GPolyline.getVertex(index:Number) to retrieve the vertex points along that route.

Related

How can I use a wildcard on a url parameter to an API?

I'm using the Dutch 9292 API (which is only unofficially documented), it is the official public transportation API. In Postman I make a GET request to api.9292.nl/0.1/locations?lang=nl-NL&q=a&type=station, but I'd like to get a list of all stations. Not just the ones starting with "a". I know I can loop trough the alphabet, but that would require 26 calls and I hope it can be done in 1. The site returns JSON.
What happens if you omit the "q" query parameter ? ( api.9292.nl/0.1/locations?lang=nl-NL&q=a&type=station )
If the REST API is well designed this should give you what you expect.
Pretty difficult to answer without the API doc.

Google Maps Directions weird route path

I developed an app that sends GPS points to a server and the server convert those GPS points into a path, which is shown in a map.
Now the server makes a call to Google Maps Directions service and gets a response. From that response I use the value overview_polyline, which based on the documentation:
Contains an object holding an array of encoded points that represent
an approximate path of the resulting directions.
The problem is that sometimes the line I get is really weird. Sometimes it gives me a path where there's no street at all.
Here are some screenshots to describe my problem. The yellow marker is the start point (A), and the blue marker is the end point (B).
So I asked Google to give a route from A to B, with driver mode, so it shows the actually path.
And this is the result:
This is the API call I use. My question is: Any idea why would it return that path?
http://www.geocodezip.com/v3_example_geo2.asp?addr1=53%20Imperial%20Avenue,%20Westport,%20CT%2006880,%20USA&addr2=2%20Harborview%20Road,%20Westport,%20CT%2006880,%20USA&geocode=1&geocode=2&type=m
Looks to me like the encoded polyline is not being rendered correctly. How is your code handling that?
example using the geometry library decodePath function
Looks to me like Google broke their polyline encoding.
If I paste it into here (which admittedly doesn't expect polylines, it expects polyons)
I need to escape the "`", change:
{pazFraw~L|#|#f#^`#N\\?XIx#a#n#[
to:
{pazFraw~L|#|#f#^\`#N\\?XIx#a#n#[
to make it have a more reasonable shape.

rendering a json with direction service

when i make a request for a specific latlang direction service responses with the same json. so instead of making the same requests always, i want to store the json somehow.i tried parsing the json and sent to my function which i render the responses, but it didn't work. is something like this even possible?
var direction = JSON.parse('{"routes":[{"bounds":......}');
directionRenderer.setDirections(direction);
It's not possible by using directionRenderer.setDirections() , because not all properties of a directionsResult may be stored in JSON.
But you may of course draw the route on your own, fetch the important details (LatLng's, descriptions etc. out of the directionsResult and use them to 1. draw a polyline and 2. providing route-details)

google maps XML Import

hi I am trying to develop an application where I import an XML file with addresses and then google maps should tell me the closest places according to my current location.
Can anyone please help me with this.
Thanks
You may use google.maps.geometry.spherical.computeDistanceBetween() to calculate the distance between 2 LatLng's. When you didn't know the LatLng's first request them via the geocoding-service.
This will give you the calculated distance between the points.
When you wan't to get the distance based on a route(e.g. driving-distance) request the directions-Service , the response will contain route and the distance. To request distances for multiple routes with 1 request you also may use a DistanceMatrixRequest
Looks like the perfect use case for Distance Matrix. You'll have to parse the XML file first, and then create a distance matrix request that includes all your locations. That will return a response that gives you the distances to all locations.

Only getting city from GPS coordinates

Is there a way to only get the city name from gps coords ?
curl 'http://maps.google.com/maps/api/geocode/xml?latlng=43.7,7.26&sensor=false'
gives me several addresses, much more than I need. I did not find any filter options in the query, I would expect something like an additionnal "q=city" for instance.
I found GeoLite. At least for those who need the centre location of cities using an integrated database.
I finally used geocoder module (for node.js) and parse the json response to get the locality.