config: translate all source comments to English (i18n data strings unchanged)

This commit is contained in:
Richard Zink committed 2026-10-10 11:16:11 +02:00
1 parent 1879a6912a
commit a23cf85223
1 file changed
+46 -47
+46 -47
View File
@@ -80,8 +80,8 @@ window.CONFIG = {
units: { units: {
temperature: 'C' temperature: 'C'
}, },
// Data attribution at the bottom of the info box (auto text based on // Data attribution at the bottom of the info box (automatic text
// the enabled layers). false = ausgeblendet. // based on the enabled layers). false = hidden.
credits: true, credits: true,
// Internal 3D resolution scale (0.3..1, default 1). Lower values // Internal 3D resolution scale (0.3..1, default 1). Lower values
// render the clouds/map shader at reduced resolution and upscale // render the clouds/map shader at reduced resolution and upscale
@@ -92,61 +92,44 @@ window.CONFIG = {
maxFps: 30, maxFps: 30,
location: { location: {
// Latitude and longitude for sun/moon calculations // Latitude and longitude for sun/moon calculations
// Passau (vorher: Muenchen 48.1374/11.5755, Innsbruck 47.2692/11.4041)
lat: 48.5667, lat: 48.5667,
lon: 13.4319 lon: 13.4319
}, },
weatherSim: false, weatherSim: false,
weatherSimInterval: 30000, weatherSimInterval: 30000,
// Alles Downloads (Strassenkacheln, Hoehengitter, Wetter-JSON, // All downloads (basemap tiles, elevation grid, weather JSON, geo
// Geo-Label) bleibt dauerhaft im IndexedDB — kein erneuter // label) stay in IndexedDB permanently and are never re-fetched once
// Download. expireDays (Tage, >0) reaktiviert periodisches // cached. expireDays (days, > 0) re-enables periodic basemap refresh.
// Auffrischen der Strassenkacheln.
tiles: { tiles: {
expireDays: null, expireDays: null,
// true = Kachel-Raender + N/S + x/y-Koords in die Boden-Textur // true = draw tile borders + N/S + x/y coords into the ground
// malen (Debug-Orientierung). Aus = saubere Karte. // texture (debug orientation). Off = clean map.
debug: false debug: false
}, },
// Boden-Bildquelle: 'satellite' = ESRI World_Imagery (Luftbild, ohne // Ground imagery: 'satellite' = ESRI World_Imagery (aerial, no
// Beschriftung), 'streets' = ESRI World_Street_Map (mit Ortsnamen). // labels), 'streets' = ESRI World_Street_Map (with place names).
// Beide dauerhaft gecacht (eigener Cache- Praefix pro Stil). // Both cached permanently (separate cache prefix per style).
ground: { ground: {
style: 'satellite' style: 'satellite'
}, },
// Achterkurs um location (lat/lon), ueberschneidungspunkt genau auf // Figure-eight course around location (lat/lon); the crossing point
// der Koordinate. null/entfernen = gerade Flugbahn. // sits exactly on the coordinate. null/removed = straight flight.
orbit: { orbit: {
radiusKm: 60, // Lappenspitze: max. Abstand vom Zentrum radiusKm: 60, // lobe tip: max distance from the centre
clockwise: true, clockwise: true,
reorient: true, // Zufalls-Ausrichtung an jedem Kreuzungs-Durchflug reorient: true, // random heading at every crossing pass
// Langsames vertikales Wogen innerhalb der Flugband 15-35 km: // Slow vertical bobbing inside the 15-35 km flight band:
// Mitte 25 km (~1.93 Welt-Einheiten), amp = halbes Band // centre 25 km (~1.93 world units), amp = half the band
// (10 km ~ 0.77); harte Klemme ueber/unter die Bandgrenzen. // (10 km ~ 0.77); hard clamp at the band limits.
// periodS Sekunden pro Zyklus, tilt = Reaktion der Kamera-Nase // periodS = seconds per cycle, tilt = camera nose reaction to
// auf Steig-/Sinkrate. enabled: false = konstant 25 km. // climb/descent rate. enabled: false = constant 25 km.
altBob: { enabled: true, amp: 0.77, periodS: 90, tilt: 0.3 } altBob: { enabled: true, amp: 0.77, periodS: 90, tilt: 0.3 }
}, },
// Bodennebel: Distanz-Haze. distanceKm = Sichtweite bis vollständige // Ground fog: distance haze. distanceKm = visibility until fully
// Nebelsaettigung (false/0 = aus). // saturated haze (false/0 = off).
fog: { fog: {
distanceKm: 120 distanceKm: 120
}, },
// 3D-Boden aus echten Hoehendaten (Copernicus DEM, terrarium-Kacheln).
// enabled: false = flache Ebene. exaggeration: vertikale Ueberhoehung
// (1 = real, unsichtbar; default 8). wireframe: true = Mesh-Kanten
// als orange Linien zusaetzlich einblenden (Debug).
// nightLights: NASA-VIIRS-Stadtlichter-Layer, der ab Sonnenuntergang
// ueber ~1 h in die Tageskarte geblendet wird (dunkler Boden,
// leuchtende Staedte). Einmaliger Fetch (~49 Kacheln), persistent
// gecacht. false = kein Lichtoverlay, nachts bleibt die normale
// Textur deutlich heller (nur sanft abgedimmt).
// carLights: fahrende Lichter auf Autobahnen (OSM/Overpass-Kurven,
// nachts additiv ueber dem Gelaende). JSON einmalig, persistent gecacht.
// cityLights: Siedlungslichter — OSM-Ortsknoten (city/town/village/
// hamlet) als leicht gelbliche Glow-Punkte, ab Daemmerung statisch;
// je groesser die Siedlung (place-Klasse + population-Tag), desto
// mehr und hellere Punkte. Eine Overpass-Abfrage, persistent gecacht.
// ---- Civil aviation (CONFIG.flights) --------------------------------- // ---- Civil aviation (CONFIG.flights) ---------------------------------
// Low-poly jets (CC0 model, vendor/plane3d.js) with randomized target // Low-poly jets (CC0 model, vendor/plane3d.js) with randomized target
// airports: the destination is rolled at every take-off (hubs weighted // airports: the destination is rolled at every take-off (hubs weighted
@@ -176,6 +159,22 @@ window.CONFIG = {
contrailLifeS: 300, // trail visibility duration contrailLifeS: 300, // trail visibility duration
contrailWidthM: 310 // full trail width contrailWidthM: 310 // full trail width
}, },
// 3D ground from real elevation data (Copernicus DEM, terrarium
// tiles). enabled: false = flat plane. exaggeration: vertical
// elevation scale (1 = real, nearly invisible; default 8).
// wireframe: true = overlay mesh edges as orange lines (debug).
// nightLights: NASA VIIRS city-lights layer, cross-faded into the
// day map over ~1 h after sunset (dark ground, glowing cities).
// One-time fetch (~49 tiles), cached permanently. false = no light
// overlay; at night the normal texture stays much brighter (only
// gently dimmed).
// carLights: moving lights on the real road network (OSM/Overpass
// curves, additive over the terrain at night). JSON once, cached.
// cityLights: settlement lights - OSM place nodes (city/town/
// village/hamlet) as slightly yellow glow dots from dusk on;
// bigger settlements (place class + population tag) get more and
// brighter dots. One Overpass query, cached permanently.
// Data (c) OpenStreetMap contributors, ODbL.
terrain: { terrain: {
enabled: true, enabled: true,
exaggeration: 8, exaggeration: 8,
@@ -184,20 +183,20 @@ window.CONFIG = {
carLights: true, carLights: true,
cityLights: true cityLights: true
}, },
// Tagessimulation: true = 24h-Zyklus wird in cycleSeconds durchlaufen // Day simulation: true = a full 24 h cycle runs in cycleSeconds
// (Sonne steigt im Osten, Mittag im Sueden, Untergang im Westen). // (sun rises east, culminates south, sets west).
// false = echte Sonnen-/Mondposition via SunCalc. // false = real sun/moon positions via SunCalc.
// fixedTime: 'HH:MM' (oder Zahl 0-24) = Sim-Uhr steht still auf // fixedTime: 'HH:MM' (or a number 0-24) freezes the sim clock at
// dieser Tageszeit (bewegte Objekte, Wolken, Autos und Wetter-Sim // that time of day (moving objects, clouds, cars and the weather
// laufen unaffected weiter); null/auskommentiert = Uhr laeuft. // sim keep running unaffected); null/omitted = the clock advances.
// 20:00 = maximum Verkehrsaufkommen (Plateau 18:30-23:00, Dichte=1).
day: { day: {
simulation: false, simulation: false,
cycleSeconds: 20, cycleSeconds: 20,
fixedTime: null fixedTime: null
}, },
// Wolkendecke in Welt-Einheiten (1 unit ~ 12.9 km bei Zoom 11; // Cloud deck in world units (1 unit ~ 12.9 km at zoom 11; flight
// Flugband 15-35 km = y ~ 1.16-2.70). Oberkante unter dem Tiefpunkt. // band 15-35 km = y ~ 1.16-2.70). Keep the top below the lowest
// flight altitude.
clouds: { clouds: {
top: 0.9, top: 0.9,
bottom: -0.3 bottom: -0.3