Non puoi selezionare più di 25 argomenti
Gli argomenti devono iniziare con una lettera o un numero, possono includere trattini ('-') e possono essere lunghi fino a 35 caratteri.
206 righe
5.9 KiB
206 righe
5.9 KiB
function _displayMapCreate (divtarget) { |
|
divtarget = typeof divtarget !== 'undefined' ? divtarget : 'app'; |
|
document.getElementById(divtarget).innerHTML = "<div id='map' class='map-wrapper'></div>"; |
|
document.getElementById('home').className = "nav-link flat"; |
|
document.getElementById('leaflet_crud_create').className = "nav-link flat active"; |
|
document.getElementById('leaflet_crud_read').className = "nav-link flat"; |
|
document.getElementById('navbarDropdownUpdate').className = "nav-link dropdown-toggle"; |
|
document.getElementById('leaflet_crud_delete').className = "nav-link flat"; |
|
|
|
var map, isCollapsed, openStreetMaps; |
|
if (document.body.clientWidth <= 767) { |
|
isCollapsed = true; |
|
} else { |
|
isCollapsed = false; |
|
} |
|
|
|
var url = "https://test-paesaggistica.lavoripubblici.sicilia.it/geoserver/mappers/wms"; |
|
|
|
//################# INIZIO PARTICELLA SELEZIONATA ################# |
|
<?php if ( strlen($_SESSION['SELECT_PARTICELLA']) > 100 ) { ?> |
|
particella = L.geoJson(<?php echo $_SESSION['SELECT_PARTICELLA'];?>, { |
|
style: {'color': "#ff0000",'fillColor': "rgb(255, 255, 0)",'fillOpacity': 0.4,'dashArray': 4,'weight': 3,'opacity': 0.9} |
|
}), |
|
<?php } ?> |
|
//################# FINE PARTICELLA SELEZIONATA ################# |
|
|
|
odm1 = L.tileLayer ('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', |
|
{ |
|
maxZoom: 20, |
|
minZoom: 1, |
|
transparent: true, |
|
attribution: 'OpenStreetMap | contributors CC-BY-SA.' |
|
}); |
|
|
|
|
|
odm2 = L.tileLayer ('http://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}', |
|
{ |
|
maxZoom: 20, |
|
minZoom: 1, |
|
transparent: true, |
|
attribution: '© Esri | Source: Esri, USDA, USGS, AEX, GeoEye and the GIS User Community' |
|
}); |
|
|
|
|
|
odm3 = L.tileLayer.wms ('http://geoportal.mapcloud.it:8080/geoserver/wms', |
|
{ |
|
maxZoom: 20, |
|
minZoom: 5, |
|
transparent: true, |
|
layers: 'mappers:provincie', |
|
attribution: '© mapcloud services' |
|
}); |
|
|
|
ctr10k = L.tileLayer.wms ('http://geoportal.mapcloud.it:8080/geoserver/wms', |
|
{ |
|
format: 'image/png', |
|
transparent: true, |
|
maxZoom: 20, |
|
minZoom: 5, |
|
transparent: true, |
|
layers: 'mapcloud:ctr10k', |
|
attribution: 'Carta Tecnica Regionale 1:10.000 - Regione Sicilia (Servizio WMS)' |
|
}); |
|
|
|
particelle = L.tileLayer.wms(url, { |
|
layers: "mappers:particelle_<?php echo $_SESSION['COMUNE_BELF']; ?>", |
|
format: "image/png", |
|
maxZoom: 20, |
|
minZoom: 10, |
|
transparent: true, |
|
attribution: '© mapcloud services' |
|
}); |
|
|
|
|
|
|
|
map = L.map("map", { |
|
zoom: <?php echo $_SESSION['ZOOM'];?>, |
|
center: [<?php echo $_SESSION['CENTER'];?>], |
|
layers: [odm1,particella], |
|
minZoom: 3, |
|
maxZoom: 20, |
|
zoomControl: false, |
|
attributionControl: false |
|
}); |
|
|
|
map.setMaxBounds([<?php echo $_SESSION['BOUND']; ?>]); |
|
|
|
var zoomControl = L.control.zoom({ |
|
position: "topleft" |
|
}).addTo(map); |
|
|
|
|
|
var baseLayers = [ |
|
{label: '<b>Opendata Map</b>', noShow: false, children: [ |
|
{label: 'OpenStreetMap', layer: odm1}, |
|
{label: 'Satellite Image', layer: odm2}, |
|
{label: 'Limiti provinciali', layer: odm3}, |
|
]}, |
|
{label: '<b>Cartografia Regionale</b>', children: [ |
|
{label: 'CTR 10K - volo 2012-2013', layer: ctr10k }, |
|
]}, |
|
]; |
|
|
|
var overlayLayers = |
|
{ |
|
label: '<b>CARTOGRAFICI</b>', |
|
noShow: true, |
|
children: [ |
|
{label: '<b>Catasto</b>', children: [ |
|
{label: 'Particelle catastali', layer: particelle}, |
|
]}, |
|
{label: '<b>Particelle progetto</b>', children: [ |
|
{label: 'Particelle selezionate', layer: particella}, |
|
]}, |
|
] |
|
}; |
|
|
|
var options = { |
|
collapsed: true, |
|
closedSymbol: '<i class="fal fa-plus-square" style="margin-right:5px"></i>', |
|
openedSymbol: '<i class="fal fa-minus-square" style="margin-right:5px"></i>', |
|
namedToggle: false, |
|
spaceSymbol: ' ', |
|
selectorBack: false, |
|
collapseAll: '', |
|
expandAll: '', |
|
}; |
|
|
|
var layerControl = L.control.layers.tree(baseLayers, overlayLayers, options).addTo(map); |
|
|
|
var attributionControl = L.control({ |
|
position: "bottomright" |
|
}); |
|
|
|
/* Digitize Function */ |
|
var drawnItems = new L.FeatureGroup(); |
|
map.addLayer(drawnItems); |
|
|
|
var drawControl = new L.Control.Draw({ |
|
draw: { |
|
position: 'topleft', |
|
polyline: true, |
|
polygon: true, |
|
rectangle: false, |
|
circle: false, |
|
marker: true, |
|
circlemarker: false |
|
}, |
|
edit: false |
|
}); |
|
|
|
map.addControl(drawControl); |
|
|
|
map.on('draw:created', function (e) { |
|
var type = e.layerType, |
|
layer = e.layer; |
|
|
|
var drawnJSONObject = layer.toGeoJSON(); |
|
var objectGeometry = Terraformer.WKT.convert(drawnJSONObject.geometry); |
|
|
|
if (type === 'polyline') { |
|
_buildDigitiseModalBox('modalform','LINESTRING',objectGeometry); |
|
} else if (type === 'polygon') { |
|
_buildDigitiseModalBox('modalform','POLYGON',objectGeometry); |
|
} else if (type === 'marker') { |
|
_buildDigitiseModalBox('modalform','POINT',objectGeometry); |
|
} else { |
|
console.log('__undefined__'); |
|
} |
|
//map.addLayer(layer); |
|
drawnItems.addLayer(layer); |
|
}); |
|
|
|
$("#modalform").on('shown.bs.modal', function(){ |
|
_activateFeatureSave(); |
|
}); |
|
|
|
|
|
|
|
var sidebar = L.control.sidebar({ |
|
autopan: false, |
|
container: "sidebar", |
|
position: "right" |
|
}).addTo(map); |
|
|
|
|
|
var layerControl = L.control.layers( |
|
baseLayers, |
|
overlayLayers, |
|
{ |
|
position: "topright", |
|
collapsed: false |
|
} |
|
).addTo(map); |
|
|
|
|
|
var layerControlContainer = layerControl.getContainer(); |
|
$("#layercontrol").append(layerControlContainer); |
|
$(".leaflet-control-layers-list").prepend("<strong class='title'>Base Maps</strong><br>"); |
|
$(".leaflet-control-layers-separator").after("<br><strong class='title'>Layers</strong><br>"); |
|
|
|
|
|
|
|
|
|
|
|
}
|
|
|