From 9a1bc3404287d12f71eec0df030b8038a89e9e11 Mon Sep 17 00:00:00 2001 From: German Khokhlov Date: Tue, 3 Nov 2026 21:09:09 +0400 Subject: [PATCH] Keep weak Active Fires as markers through the hand-off MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The 750–3,000 km markers band now draws up to 20,000 detections instead of 2,500. At the 2,400 km end of the cross-fade the padded view over Africa holds ~21,000 fires, and the old cap kept only those above ~17 MW, so most heat spots faded into empty ground as the heatmap went out. A rebuild of that many costs ~60 ms, and only in the densest views. --- changelog.d/1426-fire-intensity-filter.md | 2 +- docs/CURRENT-STATE.md | 5 ++++- src/layers/firms/policy.js | 6 +++++- 3 files changed, 10 insertions(+), 3 deletions(-) diff --git a/changelog.d/1426-fire-intensity-filter.md b/changelog.d/1426-fire-intensity-filter.md index 2254b1169..d22e3f843 100644 --- a/changelog.d/1426-fire-intensity-filter.md +++ b/changelog.d/1426-fire-intensity-filter.md @@ -5,7 +5,7 @@ High confidence switch and an "N of M shown" counter to the layer row. Far zoom shows a Snap Map–style heatmap in the same colors instead of squares, one distinct spot per fire, empty where nothing burns, and cross-fades with - the markers around 3,000 km with no gap. The filter applies once before + the markers around 3,000 km with no gap, keeping weak fires as markers. The filter applies once before rendering, so markers, cards, the heatmap, context and the top-fires query agree; share links keep it (`w` token: `f`, `c`), and `get_active_fires` takes matching `min_frp_mw` and `confidence` arguments. Default 0 MW / All diff --git a/docs/CURRENT-STATE.md b/docs/CURRENT-STATE.md index 8fdb5b582..84325e63d 100644 --- a/docs/CURRENT-STATE.md +++ b/docs/CURRENT-STATE.md @@ -2225,7 +2225,10 @@ built at every zoom and cross-fade by camera height between 2,400 and 3,600 km, every frame, so a fast zoom never shows a gap: the heatmap fades by imagery `alpha` (a hidden Cesium imagery layer is unmapped from the globe tiles and re-mapped late when shown), the markers by sprite alpha, and the -marker collection is hidden once the heatmap is whole. "N FIRES" cards from a 2° / 1° aggregation still label the hottest +marker collection is hidden once the heatmap is whole. The 750–3,000 km +markers band draws up to 20,000 detections (the strongest in the padded +view), so the weak fires the heatmap shows stay on screen as markers when it +fades out. "N FIRES" cards from a 2° / 1° aggregation still label the hottest areas; their accent is the strongest fire's FRP color. The Active Fires row carries a "Fire intensity (FRP)" slider on a log scale diff --git a/src/layers/firms/policy.js b/src/layers/firms/policy.js index 6ba8ebb8e..8431655bd 100644 --- a/src/layers/firms/policy.js +++ b/src/layers/firms/policy.js @@ -33,10 +33,14 @@ export const LOD_LEVELS = [ labelDistance: 8500000, }, { + // Up to 20,000 markers: at the 2,400 km end of the hand-off the padded + // view over Africa, the densest region, holds ~21,000 detections, and a + // tighter cap left the heatmap's weak spots dissolving into nothing. + // A rebuild of that many costs ~60 ms, only there. id: 'local', minHeight: 750000, mode: 'detections', - maxDetections: 2500, + maxDetections: 20000, labelDistance: 4500000, }, {