V4_2_0_FACT_ASSDACIPS_DEMO01
Demo ASSDA-CIPS. Filtros tipología - clúster
by SIGC GUADALTEL
HTML
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/assets/css/mapea.ol.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/geosearchbylocation/geosearchbylocation.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/wfstcontrols/wfstcontrols.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/geosearch/geosearch.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/printer/printer.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/measurebar/measurebar.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/streetview/streetview.min.css">
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/vendor/browser-polyfill.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/js/mapea.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/js/configuration.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/geosearchbylocation/geosearchbylocation.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/wfstcontrols/wfstcontrols.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/geosearch/geosearch.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/printer/printer.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/measurebar/measurebar.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_factoria/plugins/attributetable/attributetable.ol.min.js"></script>
<link rel="stylesheet"...
CSS
html,
body {
margin: 0;
padding: 0;
height: 100%;
overflow: hidden;
}
.m-popup {
position: fixed;
bottom: inherit;
left: initial;
top: 0;
right: 0;
z-index: 9999;
}
.m-popup:before {
border-top-color: initial;
border-width: 0;
left: inherit;
margin-left: 0;
}
.m-popup:after,
.m-popup:before {
top: 0;
border: inherit;
content: " ";
height: 0;
width: 0;
position: inherit;
pointer-events: inherit;
}
.m-popup tr:nth-child(odd) {
background-color: rgba(41, 105, 168, 0.78);
color: white;
}
.tooltip {
position: relative;
padding: 3px;
background: rgba(0, 0, 0, 0.9);
color: white;
opacity: 0.7;
white-space: nowrap;
font: 10pt sans-serif;
}
#categoria {
background-color: rgba(55, 126, 235, 0.64);
padding: 6px;
border: 2px solid black;
}
.panel {
display: none;
padding: 10px;
background-color: #f6f6f6;
width: 200px;
cursor: pointer;
}
.closePanel {
display: none;
}
.openPanel {
display: block;
position: fixed;
bottom: inherit;
left: initial;
top: 0;
right: 0;
z-index: 9999;
border: 6px solid #5e8fb7;
}
JavaScript
function openPanel() {
if (document.getElementById("PanelTipologia").className.indexOf("openPanel") >= 0) {
document.getElementById("PanelTipologia").classList.remove("openPanel");
document.getElementById("PanelTipologia").classList.add("closePanel");
} else {
document.getElementById("PanelTipologia").classList.add("openPanel");
document.getElementById("PanelTipologia").classList.remove("closePanel");
}
}
var mapajs = M.map({
'container': 'map',
"controls": ["layerswitcher", "mouse", "scale", "overviewmap", "panzoombar", "scaleline", ],
"getfeatureinfo": "plain"
});
var centros = new M.layer.WFS({
name: "Centros ASSDA",
url: "https://clientes.guadaltel.es/desarrollo/geossigc/wfs?",
namespace: "mapea",
name: "centrosassda",
legend: "centrosassda",
getfeatureinfo: "plain",
geometry: 'POINT',
extract: true,
});
centros.on(M.evt.LOAD, function() {
centros.setStyle(categoryStyle);
centros.setStyle(new M.style.Cluster(options, vendorParameters));
});
centros.on(M.evt.SELECT_FEATURES, function(features, evt) {
let feature = features[0];
if (feature instanceof M.ClusteredFeature) {
console.log('Es un cluster');
} else {
let fs = "<table width='500'>";
Object.keys(feature.getAttributes()).forEach(key => {
if (feature.getAttribute(key) != "") {
fs += `<tr><td>\t<b>${key}</b>: ${feature.getAttribute(key)}</tr></td>`;
}
});
fs += '</table>';
mapajs.addLabel({
text: fs,
coord: evt.coord
});
mapajs.addPopup(popup, evt.coord);
}
});
/*centros.on(M.evt.SELECT_FEATURES, function(features, evt) {
features.forEach(function(feature) {
console.log(feature.getAttributes());
//logFeature(feature);
if...