You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
1.9 KiB
74 lines
1.9 KiB
/* ------------------------------------------------------------------------------ |
|
* |
|
* # Polylines |
|
* |
|
* Specific JS code additions for maps_google_drawings.html page |
|
* |
|
* Version: 1.0 |
|
* Latest update: Aug 1, 2015 |
|
* |
|
* ---------------------------------------------------------------------------- */ |
|
|
|
$(function() { |
|
|
|
// This example creates an interactive map which constructs a |
|
// polyline based on user clicks. Note that the polyline only appears |
|
// once its path property contains two LatLng coordinates. |
|
|
|
var poly; |
|
var map; |
|
|
|
// Initialize |
|
function initialize() { |
|
|
|
// Options |
|
var mapOptions = { |
|
zoom: 8, |
|
center: new google.maps.LatLng(41.651, -0.894) // Center the map on Chicago, USA. |
|
}; |
|
|
|
// Apply options |
|
map = new google.maps.Map($('.map-drawing-polyline')[0], mapOptions); |
|
|
|
|
|
// Polyline options |
|
var polyOptions = { |
|
strokeColor: '#555', |
|
strokeOpacity: 1.0, |
|
strokeWeight: 2 |
|
}; |
|
|
|
// Apply options |
|
poly = new google.maps.Polyline(polyOptions); |
|
poly.setMap(map); |
|
|
|
// Add a listener for the click event |
|
google.maps.event.addListener(map, 'click', addLatLng); |
|
} |
|
|
|
|
|
// |
|
// Handles click events on a map, and adds a new point to the Polyline. |
|
// @param {google.maps.MouseEvent} event |
|
|
|
function addLatLng(event) { |
|
|
|
var path = poly.getPath(); |
|
|
|
// Because path is an MVCArray, we can simply append a new coordinate |
|
// and it will automatically appear. |
|
path.push(event.latLng); |
|
|
|
// Add a new marker at the new plotted point on the polyline. |
|
var marker = new google.maps.Marker({ |
|
position: event.latLng, |
|
title: '#' + path.getLength(), |
|
map: map |
|
}); |
|
} |
|
|
|
|
|
// Load map |
|
google.maps.event.addDomListener(window, 'load', initialize); |
|
|
|
});
|
|
|