开发者

Showing each step geocode of directions

开发者 https://www.devze.com 2022-12-24 06:55 出处:网络
Google Maps API can build a Direction from a source to a destination.In the following Go开发者_运维技巧ogle\'s example, each step are published into the HTML code: http://code.google.com/apis/maps/doc

Google Maps API can build a Direction from a source to a destination. In the following Go开发者_运维技巧ogle's example, each step are published into the HTML code: http://code.google.com/apis/maps/documentation/examples/directions-simple.html

I would like to get the Geocoding of each step of this direction, and store them in a array. I believe it's possible, but I don't see how to process.

Many Thanks for any answer. Regards


Yes, you can get the individual steps from GDirections very easily.

First you have to make sure to pass the getSteps: true option when you call the GDirections.load() method. Then you can simply iterate through GDirections.getRoute(i).getStep(j), as in the following example:

<!DOCTYPE html>
<html> 
<head> 
   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/> 
   <title>Google Maps Simple Directions Demo</title> 
   <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;sensor=false" 
              type="text/javascript"></script>
</head> 
<body onunload="GUnload()">
   <div id="map" style="width: 550px; height: 400px"></div> 

   <script type="text/javascript"> 
      var map = new GMap2(document.getElementById("map"));
      var directions = new GDirections(map);

      directions.load('from: London, UK to: Glasgow, UK', { getSteps: true });

      GEvent.addListener(directions, "load", function() {
         if (directions.getNumRoutes() > 0) {
            for (var i = 0; i < directions.getRoute(0).getNumSteps(); i++) {
               directions.getRoute(0).getStep(i).getLatLng().lat();
               directions.getRoute(0).getStep(i).getLatLng().lng();
               directions.getRoute(0).getStep(i).getDescriptionHtml();
               directions.getRoute(0).getStep(i).getPolylineIndex();
               directions.getRoute(0).getStep(i).getDistance().meters;
               directions.getRoute(0).getStep(i).getDuration().seconds;
            }
         }
      });
   </script> 
</body> 
</html>

Further reading and reference:

  • GDirections
  • GRoute
  • GStep
0

精彩评论

暂无评论...
验证码 换一张
取 消