From 4d111f83df09575122e144a263a05e930a6f5b02 Mon Sep 17 00:00:00 2001 From: Johannes Baumeister Date: Fri, 29 May 2026 11:18:11 +0200 Subject: [PATCH] fix: Verhindere doppeltes Puffern von Leitungen durch Bereinigung und Puffer-Ausschluss --- app.js | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/app.js b/app.js index df3121b..a9e1fea 100644 --- a/app.js +++ b/app.js @@ -1035,7 +1035,7 @@ document.addEventListener('DOMContentLoaded', async () => { layerControl.addOverlay(layer, layerName); // NEU: 50m Puffer für Freileitungen - if (layerName.toLowerCase().includes('freileitung')) { + if (layerName.toLowerCase().includes('freileitung') && !layerName.toLowerCase().includes('puffer')) { try { const bufferedGeojson = turf.buffer(geojson, 0.05, {units: 'kilometers'}); const bufferLayer = L.geoJSON(bufferedGeojson, { @@ -1214,9 +1214,10 @@ document.addEventListener('DOMContentLoaded', async () => { console.log(`Leitungsverläufe API: ${data.features ? data.features.length : 0} Features erhalten.`); // Alte lokale Layer aufräumen - const localLtgKeys = Object.keys(overlays).filter(k => - (k.toLowerCase().includes('freileitung') || k.toLowerCase().includes('wasserstoff') || k.toLowerCase().includes('leitung')) && !k.includes('(db)') - ); + const localLtgKeys = Object.keys(overlays).filter(k => { + const low = k.toLowerCase(); + return low.includes('freileitung') || low.includes('wasserstoff') || low === 'leitung' || low.startsWith('leitung '); + }); localLtgKeys.forEach(key => { console.log(`Entferne lokalen Leitungs-Layer "${key}" (wird durch DB ersetzt).`); if (state.map.hasLayer(overlays[key])) { @@ -2496,7 +2497,7 @@ function loadBakedLayers(bakedLayers, state, overlays, layerControl, statusEl) { state.bakedData[name] = entry; // NEU: 50m Puffer für Freileitungen (Standalone Mode) - if (name.toLowerCase().includes('freileitung')) { + if (name.toLowerCase().includes('freileitung') && !name.toLowerCase().includes('puffer')) { try { const bufferedGeojson = turf.buffer(entry.data, 0.05, {units: 'kilometers'}); const bufferLayer = L.geoJSON(bufferedGeojson, {