Neue Features: Satelliten-Orbits, Naturkatastrophen, Visual Modes

SATELLITEN (CelesTrak TLE):
- Raumstationen (ISS), GPS, Galileo, Wetter, Erdbeobachtung, Starlink
- Echtzeit-Positionsberechnung aus Kepler-Elementen (2s Update)
- Orbitbahnen als leuchtende Linien (Stationen, GPS, Galileo)
- Farbkodiert nach Gruppe (rot=Station, orange=GPS, blau=Galileo)

NATURKATASTROPHEN (NASA EONET):
- Waldbraende, Vulkane, Stuerme, Fluten, Erdrutsche, Eis
- Farbige Punkte mit Emoji-Labels
- Klick zeigt Details und Quellen

VISUAL MODES:
- STD: Standard-Ansicht
- NVG: Nachtsicht (gruener Monochrom-Filter)
- FLIR: Thermal-Ansicht (invertiert, Infrarot-Look)
- CRT: Retro-Monitor (Scanlines, Vignette)

4 neue Dateien: satellites.js, disasters.js, visualmodes.js,
data_satellites.py, data_disasters.py
Dieser Commit ist enthalten in:
Claude Dev
2026-03-24 12:50:04 +01:00
Ursprung 1c462c3041
Commit 9b4ea4cd28
9 geänderte Dateien mit 493 neuen und 0 gelöschten Zeilen

Datei anzeigen

@@ -149,3 +149,84 @@ html, body { height: 100%; overflow: hidden; background: var(--bg-primary); colo
.layer-status.active {
display: block;
}
/* === Neue Layer-Dots === */
.dot-satellites { background: #ff4444; }
.dot-disasters { background: #ff8800; }
/* === Visual Mode Buttons === */
.vmode-btn {
padding: 4px 8px;
font-family: var(--font-mono);
font-size: 9px;
font-weight: 700;
letter-spacing: 1px;
background: rgba(255,255,255,0.05);
border: 1px solid var(--border);
border-radius: 3px;
color: var(--text-dim);
cursor: pointer;
transition: all 0.2s;
}
.vmode-btn:hover { border-color: var(--accent); color: var(--text); }
.vmode-btn.active { background: rgba(0,255,136,0.15); border-color: var(--accent); color: var(--accent); }
/* === Visual Overlay (CRT Scanlines) === */
.visual-overlay {
position: fixed;
inset: 0;
z-index: 50;
pointer-events: none;
}
.vmode-crt-overlay {
background: repeating-linear-gradient(
0deg,
transparent,
transparent 2px,
rgba(0, 0, 0, 0.08) 2px,
rgba(0, 0, 0, 0.08) 4px
);
box-shadow: inset 0 0 120px rgba(0, 0, 0, 0.3);
}
/* === Night Vision Mode === */
.vmode-nvg {
filter: saturate(0) brightness(1.2) contrast(1.1);
}
.vmode-nvg .cesium-viewer { mix-blend-mode: normal; }
.vmode-nvg::after {
content: '';
position: absolute;
inset: 0;
background: rgba(0, 255, 0, 0.08);
pointer-events: none;
z-index: 40;
mix-blend-mode: multiply;
}
/* === FLIR Thermal Mode === */
.vmode-flir {
filter: saturate(0) invert(1) contrast(1.3) brightness(0.9);
}
.vmode-flir::after {
content: '';
position: absolute;
inset: 0;
background: linear-gradient(135deg, rgba(255,100,0,0.05), rgba(255,0,100,0.05));
pointer-events: none;
z-index: 40;
}
/* === CRT Mode === */
.vmode-crt {
filter: contrast(1.1) brightness(0.95);
}
.vmode-crt::after {
content: '';
position: absolute;
inset: 0;
background: radial-gradient(ellipse at center, transparent 60%, rgba(0,0,0,0.4) 100%);
pointer-events: none;
z-index: 40;
}