问题
i'm developing an iPhone app which embed a mapView made with mkmapkit. I got two coordinates and I'm tracing the direction between these two points.
Everything works well. I'm using google maps api : maps.googleapis.com/maps/api/directions to retrieve xml with all the steps of the direction.
But one thing is very strange : I just can't understand why driving direction is not accurate. Between two steps it trace a right line and don't follow the road while walking travel mode trace a very accurate direction, following roads.
Driving Mode : http://www.michael-blin.fr/misc/aden/google/driving.png
Walking Mode : http://www.michael-blin.fr/misc/aden/google/walking.png
My question is simple : have you ever used the google maps api and can you understand why one is more accurate than the other...
回答1:
Your driving directions seems to take you along major roads or highways, so there are no change of driving directions between each of these points. You have not stated the reply you get from the directions api, but my guess is that you are receiving the steps along the route where you have to change direction, eg. highway junctions, etc:
Google documentation: Each element in the steps array defines a single step of the calculated directions. A step is the most atomic unit of a direction's route, containing a single step describing a specific, single instruction on the journey. E.g. "Turn left at W. 4th St." The step not only describes the instruction but also contains distance and duration information relating to how this step relates to the following step. For example, a step denoted as "Merge onto I-80 West" may contain a duration of "37 miles" and "40 minutes," indicating that the next step is 37 miles/40 minutes from this step.
When you are walking, you are taking turns more often in order to get the shortest route.
The directions api does not provide you with the exact overlays that match the actually roads travelled. Only the positions where you make changes.
Alternatively you could take a look at the overview_polyline
field in the reply. It may have a smoother path than by using the waypoints.
来源:https://stackoverflow.com/questions/5102286/iphone-google-maps-directions