feat: transparent yellow 50m buffer for Freileitungen
Deploy Bürgerwind / deploy (push) Successful in 17s Details

This commit is contained in:
Johannes Baumeister 2026-05-29 10:35:50 +02:00
parent a51a6addf9
commit 47c77b69e9
1 changed files with 44 additions and 0 deletions

44
app.js
View File

@ -1034,6 +1034,28 @@ document.addEventListener('DOMContentLoaded', async () => {
state.map.addLayer(layer); state.map.addLayer(layer);
layerControl.addOverlay(layer, layerName); layerControl.addOverlay(layer, layerName);
// NEU: 50m Puffer für Freileitungen
if (layerName.toLowerCase().includes('freileitung')) {
try {
const bufferedGeojson = turf.buffer(geojson, 0.05, {units: 'kilometers'});
const bufferLayer = L.geoJSON(bufferedGeojson, {
style: {
color: '#ffff00',
weight: 0,
fillColor: '#ffff00',
fillOpacity: 0.3
}
});
const bufferName = layerName + " (50m Puffer)";
overlays[bufferName] = bufferLayer;
state.map.addLayer(bufferLayer);
layerControl.addOverlay(bufferLayer, bufferName);
bufferLayer.bringToBack(); // Hinter die Leitung legen
} catch(err) {
console.error("Fehler beim Erstellen des Puffers für " + layerName, err);
}
}
if (layerName.toLowerCase().includes('eigentümer') || layerName.toLowerCase().includes('flurstücke')) { if (layerName.toLowerCase().includes('eigentümer') || layerName.toLowerCase().includes('flurstücke')) {
layer.bringToBack(); layer.bringToBack();
} }
@ -2368,6 +2390,28 @@ function loadBakedLayers(bakedLayers, state, overlays, layerControl, statusEl) {
layerControl.addOverlay(layer, name); layerControl.addOverlay(layer, name);
state.bakedData[name] = entry; state.bakedData[name] = entry;
// NEU: 50m Puffer für Freileitungen (Standalone Mode)
if (name.toLowerCase().includes('freileitung')) {
try {
const bufferedGeojson = turf.buffer(entry.data, 0.05, {units: 'kilometers'});
const bufferLayer = L.geoJSON(bufferedGeojson, {
style: {
color: '#ffff00',
weight: 0,
fillColor: '#ffff00',
fillOpacity: 0.3
}
});
const bufferName = name + " (50m Puffer)";
overlays[bufferName] = bufferLayer;
state.map.addLayer(bufferLayer);
layerControl.addOverlay(bufferLayer, bufferName);
bufferLayer.bringToBack(); // Hinter die Leitung legen
} catch(err) {
console.error("Fehler beim Erstellen des Puffers für " + name, err);
}
}
if (name.toLowerCase().includes('eigentümer') || name.toLowerCase().includes('flurstücke')) { if (name.toLowerCase().includes('eigentümer') || name.toLowerCase().includes('flurstücke')) {
layer.bringToBack(); layer.bringToBack();
} }