SVG-map/asset/js/map.js

158 lines
2.8 KiB
JavaScript

//var hotelxy=[-19.8,47.5]
var maxZoomLevel = 20
var mapSW = [6.9175, 43.4738]
var mapNE = [7.0893, 43.5983]
var southWest = new L.LatLng(mapSW[0], mapSW[1], true);
L.latLng
var northEast = new L.LatLng(mapNE[0], mapNE[1], true);
//var bounds = new L.LatLngBounds(southWest, northEast);
//var bounds = new L.LatLngBounds(L.latLng(mapSW),L.latLng(mapNE));
var bounds = new L.latLngBounds(
L.latLng([6.94, 43.4738]),
L.latLng([7.06, 43.5983]));
/*
var map = L.map('map', {
attributionControl: false,
zoomControl: false,
}).setView(hotelxy,1);
L.tileLayer('asset/tiles/{z}/{x}/{y}.png', {
minZoom: 1,
maxZoom: maxZoomLevel,
continuousWorld: false,
noWrap: true,
crs: L.CRS.Simple,
}).addTo(map);
*/
var map = L.map('map', {
center: [7.02, 43.54],
//maxZoom: maxZoomLevel,
attributionControl: false,
zoomControl: false,
zoom: 14,
//continuousWorld: false,
//noWrap: true,
//crs: L.CRS.Simple,
});
map.setMaxBounds(bounds);
var svgLayerBounds = [mapSW, mapNE];
var svgBgUrl = 'asset/svg/Grand-Cannes/bg.svg'
var svgRdUrl = 'asset/svg/Grand-Cannes/roads.svg'
var svgBrUrl = 'asset/svg/Grand-Cannes/road-label-big.svg'
L.imageOverlay(svgBgUrl, svgLayerBounds).addTo(map);
L.imageOverlay(svgRdUrl, svgLayerBounds).addTo(map);
L.imageOverlay(svgBrUrl, svgLayerBounds).addTo(map);
L.control.zoom({
position: 'bottomright'
}).addTo(map);
var layzl1 = L.layerGroup()
var layzl2 = L.layerGroup()
var layzl3 = L.layerGroup()
var layzl4 = L.layerGroup()
var layzl5 = L.layerGroup()
var layzl6 = L.layerGroup()
let layzls = [null,null,layzl2,layzl3,layzl4,layzl5,layzl6]
function removeLs(list) {
for (i in list){
map.removeLayer(list[i])
}
}
function addLs(list) {
for (i in list) {
list[i].addTo(map)
}
}
function iToZL(i) {
return lay
}
/*
min/max = 163
map.setView([-163,-163],2)
*/
map.on('zoomend', function() {
let z = map.getZoom();
switch(z) {
case 1:
addLs([layzl1])
removeLs([
layzl2,
layzl3,
layzl4,
layzl5,
layzl6
])
break;
case 2:
addLs([
layzl1,
layzl2
])
removeLs([
layzl3,
layzl4,
layzl5,
layzl6
])
break;
case 3:
addLs([
layzl1,
layzl2,
layzl3
])
removeLs([
layzl4,
layzl5,
layzl6
])
break;
case 4:
addLs([
layzl1,
layzl2,
layzl3,
layzl4
])
removeLs([
layzl5,
layzl6
])
break;
case 5:
addLs([
layzl1,
layzl2,
layzl3,
layzl4,
layzl5
])
removeLs([
layzl6
])
break;
case 6:
addLs([
layzl1,
layzl2,
layzl3,
layzl4,
layzl5,
layzl6
])
break;
}
});