- 5 einklappbare Gruppen: ECHTZEIT, INTELLIGENCE, GEOINT, INFRASTRUKTUR, UMGEBUNG - Jede Gruppe zeigt Aktiv-Zaehler (z.B. 2/3) - Klick auf Header klappt Gruppe auf/zu (Chevron-Indikator) - ANSICHT (STD/NVG/FLIR/CRT) in Bottom Bar verschoben - SATELLITENBILDER-Dropdown an Panel-Oberkante (immer sichtbar) - Fadenkreuz + Ortsnamen immer sichtbar (nicht in Gruppe) - Reduziert sichtbare Zeilen von ~35 auf ~18 Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
42 Zeilen
1.2 KiB
JavaScript
42 Zeilen
1.2 KiB
JavaScript
/**
|
|
* Visual Modes: Nachtsicht (NVG), FLIR Thermal, CRT Scanlines.
|
|
*/
|
|
const VisualModes = {
|
|
_current: 'standard',
|
|
_overlay: null,
|
|
|
|
init() {
|
|
this._overlay = document.getElementById('visual-overlay');
|
|
},
|
|
|
|
set(mode) {
|
|
this._current = mode;
|
|
var container = document.getElementById('cesiumContainer');
|
|
var overlay = this._overlay;
|
|
|
|
// Alle Mode-Klassen entfernen
|
|
container.className = '';
|
|
if (overlay) { overlay.className = 'visual-overlay'; overlay.style.display = 'none'; }
|
|
|
|
switch (mode) {
|
|
case 'nvg':
|
|
container.className = 'vmode-nvg';
|
|
break;
|
|
case 'flir':
|
|
container.className = 'vmode-flir';
|
|
break;
|
|
case 'crt':
|
|
container.className = 'vmode-crt';
|
|
if (overlay) { overlay.className = 'visual-overlay vmode-crt-overlay'; overlay.style.display = 'block'; }
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
|
|
// Button-States aktualisieren
|
|
document.querySelectorAll('.vmode-btn, .vmode-btn-sm').forEach(function(btn) {
|
|
btn.classList.toggle('active', btn.dataset.mode === mode);
|
|
});
|
|
},
|
|
};
|