50 lines
1.6 KiB
JavaScript
50 lines
1.6 KiB
JavaScript
/**
|
|
* Adds a polyline between Dublin, London, Paris and Berlin to the map
|
|
*
|
|
* @param {H.Map} map A HERE Map instance within the application
|
|
*/
|
|
function addPolylineToMap(map) {
|
|
var lineString = new H.geo.LineString();
|
|
|
|
lineString.pushPoint({ lat: 53.3477, lng: -6.2597 });
|
|
lineString.pushPoint({ lat: 51.5008, lng: -0.1224 });
|
|
lineString.pushPoint({ lat: 48.8567, lng: 2.3508 });
|
|
lineString.pushPoint({ lat: 52.5166, lng: 13.3833 });
|
|
|
|
map.addObject(new H.map.Polyline(
|
|
lineString, { style: { lineWidth: 4 } }
|
|
));
|
|
}
|
|
|
|
/**
|
|
* Boilerplate map initialization code starts below:
|
|
*/
|
|
|
|
//Step 1: initialize communication with the platform
|
|
// In your own code, replace variable window.apikey with your own apikey
|
|
var platform = new H.service.Platform({
|
|
apikey: window.apikey
|
|
});
|
|
var defaultLayers = platform.createDefaultLayers();
|
|
|
|
//Step 2: initialize a map - this map is centered over Europe
|
|
var map = new H.Map(document.getElementById('map'),
|
|
defaultLayers.vector.normal.map, {
|
|
center: { lat: 52, lng: 5 },
|
|
zoom: 5,
|
|
pixelRatio: window.devicePixelRatio || 1
|
|
});
|
|
// add a resize listener to make sure that the map occupies the whole container
|
|
window.addEventListener('resize', () => map.getViewPort().resize());
|
|
|
|
//Step 3: make the map interactive
|
|
// MapEvents enables the event system
|
|
// Behavior implements default interactions for pan/zoom (also on mobile touch environments)
|
|
var behavior = new H.mapevents.Behavior(new H.mapevents.MapEvents(map));
|
|
|
|
// Create the default UI components
|
|
var ui = H.ui.UI.createDefault(map, defaultLayers);
|
|
|
|
|
|
// Now use the map as required...
|
|
addPolylineToMap(map); |