feat(natural): add tropical cyclone tracking from NHC and GDACS#1357
Merged
feat(natural): add tropical cyclone tracking from NHC and GDACS#1357
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
Integrate NHC ArcGIS REST API (15 storm slots across AT/EP/CP basins) and GDACS TC field extraction to provide real-time tropical cyclone data with forecast tracks, uncertainty cones, and historical track paths. - Proto: add optional TC fields (storm_id, wind_kt, pressure_mb, etc.) plus ForecastPoint, PastTrackPoint, CoordRing messages - Server/seed: NHC two-pass query (forecast points then detail layers), GDACS wind/pressure parsing, Saffir-Simpson classification, dedup strategy (NHC > GDACS > EONET), pressureMb validation (850-1050), advisory date with Number.isFinite guard - Globe: dashed red forecast track, per-segment wind-colored past track, semi-transparent orange forecast cone polygon - Popup: TC details panel with color-coded category badge, wind/pressure - Frontend mapper: forward all TC fields, convert CoordRing to number[][][]
- GDACS dedup now checks name + geographic proximity instead of name-only - NHC classification uses stormtype field for subtropical/post-tropical - TC popup labels use t() for localization instead of hardcoded English
- Storm center ScatterplotLayer with Saffir-Simpson wind coloring - Past track PathLayer with per-segment wind-speed color ramp - Forecast track PathLayer with dashed line via PathStyleExtension - Cone PolygonLayer for forecast uncertainty visualization - Tooltip and click routing for all new storm layer IDs
Track and cone layers carry lightweight objects without full NaturalEvent fields. Clicking them would pass incomplete data to the popup renderer. Only storm-centers-layer (which holds the full NaturalEvent) routes to the natEvent popup. Tracks and cones remain tooltip-only.
…icks Synthetic track/cone objects now carry _event reference to the parent NaturalEvent. Click handler unwraps _event before passing to popup, so clicking any storm element opens the full TC popup.
7c11e74 to
52126b6
Compare
Closed
aurel10
pushed a commit
to aurel10/car_brand_veille
that referenced
this pull request
Mar 20, 2026
…a73#1357) * feat(natural): add tropical cyclone tracking from NHC and GDACS Integrate NHC ArcGIS REST API (15 storm slots across AT/EP/CP basins) and GDACS TC field extraction to provide real-time tropical cyclone data with forecast tracks, uncertainty cones, and historical track paths. - Proto: add optional TC fields (storm_id, wind_kt, pressure_mb, etc.) plus ForecastPoint, PastTrackPoint, CoordRing messages - Server/seed: NHC two-pass query (forecast points then detail layers), GDACS wind/pressure parsing, Saffir-Simpson classification, dedup strategy (NHC > GDACS > EONET), pressureMb validation (850-1050), advisory date with Number.isFinite guard - Globe: dashed red forecast track, per-segment wind-colored past track, semi-transparent orange forecast cone polygon - Popup: TC details panel with color-coded category badge, wind/pressure - Frontend mapper: forward all TC fields, convert CoordRing to number[][][] * fix(natural): improve GDACS dedup, NHC classification, and TC popup i18n - GDACS dedup now checks name + geographic proximity instead of name-only - NHC classification uses stormtype field for subtropical/post-tropical - TC popup labels use t() for localization instead of hardcoded English * feat(map): add cyclone-specific deck.gl layers for 2D map - Storm center ScatterplotLayer with Saffir-Simpson wind coloring - Past track PathLayer with per-segment wind-speed color ramp - Forecast track PathLayer with dashed line via PathStyleExtension - Cone PolygonLayer for forecast uncertainty visualization - Tooltip and click routing for all new storm layer IDs * fix(map): remove click routing for synthetic storm track/cone layers Track and cone layers carry lightweight objects without full NaturalEvent fields. Clicking them would pass incomplete data to the popup renderer. Only storm-centers-layer (which holds the full NaturalEvent) routes to the natEvent popup. Tracks and cones remain tooltip-only. * fix(map): attach parent NaturalEvent to synthetic storm layers for clicks Synthetic track/cone objects now carry _event reference to the parent NaturalEvent. Click handler unwraps _event before passing to popup, so clicking any storm element opens the full TC popup.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Changes
Proto (
list_natural_events.proto):Server + Seed (
list-natural-events.ts,seed-natural-events.mjs):Globe (
GlobeMap.ts):Popup (
MapPopup.ts):Test plan