Commit Graph
14 Commits
Author SHA1 Message Date
Sameh Khamis 93942d0dbe Show only the CCTV cameras in view, thinned to one per ground cell when zoomed out
The CCTV layer kept every loaded camera live: each view change touched every
icon, every notification rebuilt every camera's state, and the picker listed
the whole catalog. With the default 4,000 cameras, a continental drag ran at
152-179 fps with 18-24 frames over 30 ms (worst 112 ms). It now runs at
235 fps with none. The layer now:

- shows icons only on or near the screen, and when zoomed out keeps one camera
  per world-anchored cell (healthy feeds first), so panning keeps the same
  cameras;
- grounds and draws coverage only for the cameras in view, the active camera
  and its coverage neighbours, retrying a camera at most twice per view regime;
- reruns the view pass while the camera moves, paced by its own cost, and
  projects with one matrix per pass instead of a Cesium call per camera;
- keeps the billboard buffer-usage hint fixed, so showing or hiding a few
  icons no longer rewrites the vertex data of every billboard;
- lists the cameras in view (active camera first) in the picker, closing with
  the count of cameras outside the view, and builds the full camera list in
  the UI state only when it is read.
2026-10-29 21:31:59 -07:00
Said Turksever 16c888806a Prune the removed Radio strings from the catalogs main added
main gained de, fr, it, ja, pt and uk catalogs that still carried the 12
strings this change retires, so their catalog-matches-code tests failed
once the branch met main.
2026-10-29 16:44:46 +00:00
Said Turksever 151e7ad5fd Drop the Operator string from the German and French catalogs
The catalogs merged from main still carried the retired layout's label, so the catalog tests failed.
2026-10-29 15:54:40 +00:00
German Khokhlov 48a2cc0690 i18n(fr): drop the Snow strings removed in main 2026-10-29 18:36:29 +04:00
German KhokhlovandClaude Opus 5.5 f9af9e758c i18n(fr): translate strings new in main
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 17:55:01 +04:00
German KhokhlovandClaude Opus 5.5 ed26fa12d8 i18n(fr): translate strings new in main
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-29 14:18:40 +04:00
German KhokhlovandClaude Opus 5.5 a312414d0b i18n(fr): apply review round 5
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 23:59:04 +04:00
German KhokhlovandClaude Opus 5.5 3d32a0c45c i18n(fr): apply review round 4
Apply the accepted findings from the fourth three-model French review:
« Fermez d'abord cet outil » in the pointer-busy notices, the colon form
« Outil actif : {name} » for the directions notice, « FOV CONSTRUCTEUR »,
« RAPPORT » for the USGS trigger chip, « CONTEXTE GLOBAL DÉSACTIVÉ », and
wording fixes for the radio, recent imagery, bundle preview and draw label
strings. The guide gains glossary rows for the datasheet FOV and for
rapport versus relevé.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 23:43:23 +04:00
German KhokhlovandClaude Opus 5.5 7e55ee45fe i18n(fr): apply review round 3
Apply the accepted findings from the third three-model French review:
tool-name agreement (« Outil actif : {name} »), elision before ADS-B,
« GORGE AVAL », « CLASSIQUES », « EN SURVOL », one name for the VIIRS
daily overview, U+202F thousands separator, and wording fixes for the
scene editor, directions, radio tuner and status strings.

The CCTV HUD summary now shows its CAL badge, source kind and view band
through existing catalog entries, so French reads « CAL ESTIM. INITIALE ·
SRC AMONT · CONTEXTE RUE »; English output and unknown codes are
unchanged. presentation.js matches the pt branch's round-3 version byte
for byte, so the two branches merge cleanly.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 22:52:51 +04:00
German KhokhlovandClaude Opus 5.5 e87001d0db i18n(fr): apply review round 2
Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 17:55:20 +04:00
German KhokhlovandClaude Opus 5.5 4adb9113bc i18n(fr): apply review round 1
Apply the accepted findings from the three-model French review: ground
track reads « route », wildfire containment « circonscrit », downrange
« distance au sol », tankers « navire-citerne », plus wording fixes for
lanes, timestamps, wind sector, radio, CCTV and voice strings.

Shots rebuilt by a pack's legacy bootstrap carry no sourcePackId, so the
first Nepal shot titles stayed English; the scene's applied-pack marker
now vouches for the pack's required titles.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 16:40:53 +04:00
German KhokhlovandClaude Opus 5.5 d95bffb5fd i18n(fr): fit French labels found in the screenshot review
Shorter wording where the French text ran out of its button, chip or
collapsed card at 1600×1100: the DATA LAYERS launcher (COUCHES), Recent
Imagery buttons and hints (CETTE VUE, VS CARTE, EXP. A), the ENABLING /
DISABLING layer chip, the voice detail line and the location search
placeholder. Also the CCTV range readout gets a space before m, the radio
privacy note reads naturally, and the cockpit air/sea window is shorter.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 15:09:45 +04:00
German KhokhlovandClaude Opus 5.5 402f56958f i18n(fr): translate the rest of the French catalog
- Translate the remaining 1,865 strings: aviation, maritime (AIS), weather
  and remote-sensing terms, radio, routing, scenes, voice and setup.
- Review the 862 entries from #907: LIVE becomes DIRECT / en direct, stale
  becomes obsolète, FIRMS detections are feux actifs, replay is rejeu, the
  AIS ship types use the French terms (PILOTINE, SERVITUDE, POLICE), keys
  stay Space / Esc / Enter as docs/TRANSLATORS.md asks, and NEXT/PREVIOUS
  chips match PREV (SUIV. / PRÉC.).
- French typography: narrow no-break space before : ; ? ! and %, inside
  « », and … for ellipsis; plural entries get the many form (exact
  millions, "de").
- same-as-english.json: codes, units, genre and product names that French
  spells the same as English.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-10-28 13:00:07 +04:00
Enzo Abyie 6167aae6e4 i18n(fr): French strings from #907
The French locale by abiyeenzo (#907), converted from its namespaced JS
catalogs to the English-keyed fr.json: 862 entries whose English still
matches the current UI.
2026-10-28 12:37:35 +04:00