CP-070-08 - Panel StyleLine
Panel de text para lineas
by SIGC GUADALTEL
HTML
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/geosearchbylocation/geosearchbylocation.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/assets/css/mapea.ol.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/wfstcontrols/wfstcontrols.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/geosearch/geosearch.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/printer/printer.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/measurebar/measurebar.min.css">
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/streetview/streetview.min.css">
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/vendor/browser-polyfill.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/js/mapea.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/js/configuration.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/geosearchbylocation/geosearchbylocation.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/wfstcontrols/wfstcontrols.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/geosearch/geosearch.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/printer/printer.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/measurebar/measurebar.ol.min.js"></script>
<script src="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/attributetable/attributetable.ol.min.js"></script>
<link rel="stylesheet" href="https://sigc.desarrollo.guadaltel.es/mapea42_dev/plugins/attributetable/attributetable.min.css">
<div class="row">
<table id='tableStyle'>
...
CSS
<style rel="stylesheet">
html,
body {
margin: 0;
padding: 0;
height: 100%;
overflow: auto;
}
#tableStyle {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
table#tableStyle td {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
table#tableStyle th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
table#tableStyle tr:nth-child(even) {
background-color: #dddddd;
}
input-group {
margin: 20%;
}
.display-hidden {
display: none;
}
.input-group {
margin-bottom: 1em;
}
</style>
JavaScript
// CP-070-08 - Panel StyleLine
// Caso de prueba orientado a verificar las caracterísitcas de estilo de líneas
function ocultarTable(elementToManage) {
let element = document.getElementById(elementToManage + "-td");
if (element.classList.contains("display-hidden")) {
element.classList.remove("display-hidden")
}
else {
element.classList.add("display-hidden")
}
}
let mapajs = M.map({
container: "mapjs",
projection: "EPSG:4326*d",
layers: ["OSM"],
center: {
x: -5.9584180843195425,
y: 37.36912689160224
},
zoom: 5,
controls: ['layerswitcher', 'overviewmap'],
});
var polylines = new M.layer.WFS({
name: "Ríos",
url: "https://clientes.guadaltel.es/desarrollo/geossigc/wfs",
namespace: "mapea",
name: "mapb_hs1_100",
legend: "mapb_hs1_100 - COROPLETAS",
getfeatureinfo: "plain",
geometry: 'LINE',
extract: true,
});
mapajs.addLayers([polylines]);
var nullStyleLine = new M.style.Line({
stroke: {
color: '#C8FE2E'
}
});
polylines.setStyle(nullStyleLine);
// Setea estilo a nivel de capa
function setStyleLayer(layer, style) {
layer.setStyle(style);
}
//Setea estilo a nivel de feature
function setStyleFeature(feature, style) {
feature.setStyle(style);
}
var amarillo = new M.style.Line({
fill: {
color: 'yellow',
width: 15
},
stroke: {
color: 'black',
width: 2
},
label: {
text: "feature",
font: "24px Arial",
fill: new ol.style.Fill({
color: "red"
}),
stroke: new ol.style.Stroke({
color: "#fff",
width: 3
}),
textBaseline: 'middle',
textAlign: "right",
rotateWithView: false,
textOverflow: "ellipsis",
minWidth: 60,
path: true
}
});
polylines.setStyle(amarillo);
function set(element) {
let style = polylines.getStyle();
if (element.type == "checkbox") {
style.set(element.id, element.value);
}
else {
let r = element.value;
if (element.value == "true") {
r = true;
}
if (element.value ==...