From c92c41230d5c8c957346615a955b31c46435fbac Mon Sep 17 00:00:00 2001 From: Jens Ahrensfeld Date: Fri, 26 Jun 2026 23:02:11 +0200 Subject: [PATCH] Fix fire gap: restore flame positions, increase clip topBuffer to 20px Flames back at y=177 (tips touching pot bottom at y=174), viewBox back to 255. topBuffer raised from 10 to 20px to cover flicker overshoot without clipping the tips. Co-Authored-By: Claude Sonnet 4.6 Claude-Session: https://claude.ai/code/session_01DGKe8JzTM2Gr1fdx9wYXTi --- web/app.js | 6 +++--- web/index.html | 10 +++++----- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/web/app.js b/web/app.js index 95fa04f..4a2cd9b 100644 --- a/web/app.js +++ b/web/app.js @@ -294,8 +294,8 @@ function updateFireVisualization() { const g = document.getElementById('fire-group'); const clipRect = document.getElementById('fire-clip-rect'); if (!g) return; - const fireBase = 256; // y of flame base (all paths end here) - const fireTip = 185; // y of tallest flame tip + const fireBase = 248; // y of flame base (all paths end here) + const fireTip = 177; // y of tallest flame tip const fireH = fireBase - fireTip; // 71px total flame height if (heaterPowerIst <= 0) { g.style.opacity = '0'; @@ -304,7 +304,7 @@ function updateFireVisualization() { const intensity = Math.min(1, heaterPowerIst / heaterMaxPower); // Always show the lower 35% (base), scale upper 65% with intensity const visibleH = (0.35 + 0.65 * intensity) * fireH; - const topBuffer = 10; // headroom for flicker scaleY overshoot + const topBuffer = 20; // headroom for flicker scaleY overshoot (~12% of height) clipRect.setAttribute('y', (fireBase - visibleH - topBuffer).toFixed(1)); clipRect.setAttribute('height', (visibleH + topBuffer + 2).toFixed(1)); g.style.opacity = String((0.6 + 0.4 * intensity).toFixed(2)); diff --git a/web/index.html b/web/index.html index afbfbca..9b13ded 100644 --- a/web/index.html +++ b/web/index.html @@ -47,7 +47,7 @@
- + @@ -59,7 +59,7 @@ - + @@ -80,15 +80,15 @@