106 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
			
		
		
	
	
			106 lines
		
	
	
		
			3.6 KiB
		
	
	
	
		
			HTML
		
	
	
<!DOCTYPE html>
 | 
						|
<html>
 | 
						|
<head>
 | 
						|
  <meta charset="utf-8">
 | 
						|
  <title>GMaps.js — Elevation Routes</title>
 | 
						|
  <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js"></script>
 | 
						|
  <script type="text/javascript" src="http://www.google.com/jsapi"></script>
 | 
						|
  <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
 | 
						|
  <script type="text/javascript" src="../gmaps.js"></script>
 | 
						|
  <link rel="stylesheet" href="http://twitter.github.com/bootstrap/1.3.0/bootstrap.min.css" />
 | 
						|
  <link rel="stylesheet" type="text/css" href="examples.css" />
 | 
						|
  <script type="text/javascript">
 | 
						|
    var map;
 | 
						|
    var mousemarker = null;
 | 
						|
 | 
						|
    // Load the Visualization API and the piechart package.
 | 
						|
    google.load("visualization", "1", {packages: ["columnchart"]});
 | 
						|
 | 
						|
    $(document).ready(function(){
 | 
						|
      map = new GMaps({
 | 
						|
        el: '#map',
 | 
						|
        lat: -12.043333,
 | 
						|
        lng: -77.028333,
 | 
						|
        zoom: 12
 | 
						|
      });
 | 
						|
 | 
						|
      //load google visualization chart
 | 
						|
      chart = new google.visualization.ColumnChart(document.getElementById('chart_div'));
 | 
						|
 | 
						|
      var polygone = map.drawRoute({
 | 
						|
        origin: [-12.044012922866312, -77.02470665341184],
 | 
						|
        destination: [-12.090814532191756, -77.02271108990476],
 | 
						|
        travelMode: 'walking',
 | 
						|
        strokeColor: '#131540',
 | 
						|
        strokeOpacity: 0.6,
 | 
						|
        strokeWeight: 6,
 | 
						|
        callback : function(polygones){
 | 
						|
 | 
						|
          //elevation for the path
 | 
						|
          map.getElevations({
 | 
						|
            locations : polygones.overview_path,
 | 
						|
            path: true, 
 | 
						|
            callback : function (result, status){
 | 
						|
              if (status == google.maps.ElevationStatus.OK) {
 | 
						|
 | 
						|
                var elevations = result;
 | 
						|
 | 
						|
                //set the google visualization
 | 
						|
                var data = new google.visualization.DataTable();
 | 
						|
                data.addColumn('string', 'Sample');
 | 
						|
                data.addColumn('number', 'Elevation');
 | 
						|
                for (var i = 0; i < result.length; i++) {
 | 
						|
                  data.addRow(['', elevations[i].elevation]);
 | 
						|
                }
 | 
						|
 | 
						|
                //add to the dom 
 | 
						|
                document.getElementById('chart_div').style.display = 'block';
 | 
						|
                chart.draw(data, {
 | 
						|
                  width: 340,
 | 
						|
                  height: 200,
 | 
						|
                  legend: 'none',
 | 
						|
                  titleY: 'Elevation (m)',
 | 
						|
                  focusBorderColor: '#00ff00'
 | 
						|
                });
 | 
						|
 | 
						|
                //add mouseover
 | 
						|
                google.visualization.events.addListener(chart, 'onmouseover', function(e) {
 | 
						|
                  if (mousemarker == null) {
 | 
						|
                    mousemarker = map.addMarker({
 | 
						|
                      lat: elevations[e.row].location.lat(),
 | 
						|
                      lng: elevations[e.row].location.lng()
 | 
						|
                    });
 | 
						|
                  } else {
 | 
						|
                    mousemarker.setPosition(elevations[e.row].location);
 | 
						|
                  }
 | 
						|
                });
 | 
						|
              }
 | 
						|
            }
 | 
						|
          });
 | 
						|
        }
 | 
						|
      });
 | 
						|
    });
 | 
						|
  </script>
 | 
						|
</head>
 | 
						|
<body>
 | 
						|
  <h1>GMaps.js — Elevation Routes</h1>
 | 
						|
  <div class="row">
 | 
						|
    <div class="span11">
 | 
						|
      <div id="map"></div>
 | 
						|
    </div>
 | 
						|
    <div class="span6">
 | 
						|
      <p>With GMaps.js you can calculate the elevation for a route like this:</p>
 | 
						|
      <pre>map.getElevations({
 | 
						|
  locations : [[-12.040397656836609,-77.03373871559225], [-12.040248585302038,-77.03993927003302], [-12.050047116528843,-77.02448169303511],  [-12.044804866577001,-77.02154422636042]],
 | 
						|
  path: true, 
 | 
						|
    callback : function (result, status){
 | 
						|
    if (status == google.maps.ElevationStatus.OK) {
 | 
						|
      console.log(result, status);
 | 
						|
    }
 | 
						|
  }
 | 
						|
});</pre>
 | 
						|
      <div id="chart_div"></div>
 | 
						|
    </div>
 | 
						|
  </div>
 | 
						|
</body>
 | 
						|
</html> |