Skip to content

TomTom roads from Overture transportation tiles#1769

Merged
jenningsanderson merged 8 commits intomainfrom
brad/overture-transportation-tomtom-roads
Feb 27, 2026
Merged

TomTom roads from Overture transportation tiles#1769
jenningsanderson merged 8 commits intomainfrom
brad/overture-transportation-tomtom-roads

Conversation

@brad-richardson
Copy link
Contributor

@brad-richardson brad-richardson commented Feb 17, 2026

First step to enabling non-OSM sourced Overture transportation data from TomTom to be added into OSM. There are some theoretical edge cases here involving midpoint intersections but Rapid does a good job of detecting issues and helping resolve.

Tested:

From /#map=17.26/38.62021/27.47057&background=Bing&datasets=ml-buildings-overture,tomtom-roads

rapid_tt_roads_updated.mp4

Load, filter, conflate, and render TomTom-sourced road data from
Overture PMTiles transportation theme. This extends the existing
buildings pattern to support line geometry (roads/paths).

Key changes:
- Discover transportation PMTiles URL via STAC catalog
- Extract source from `sources[].dataset` field (transportation
  theme uses different encoding than buildings' `@geometry_source`)
- Filter by source to keep only TomTom features
- Mode-aware conflation: motorized roads conflate against motorized
  OSM highways, non-motorized paths against non-motorized ones
- Point-sampling algorithm rejects features where >20% of samples
  are within 10m of a same-mode OSM highway
- Map Overture transportation properties to OSM tags (highway, surface,
  bridge/tunnel, oneway, layer, footway subclass)
- Render roads as lines with endpoint vertices in PixiLayerRapid
- Add tomtom-roads to default dataset menu (not auto-enabled)
- Add en translations for TomTom Roads dataset label/description
- 54 tests covering source extraction, line conversion, tag mapping,
  conflation, and geometry helper functions
@brad-richardson brad-richardson changed the title [wip] TomTom roads from Overture transportation TomTom roads from Overture transportation tiles Feb 18, 2026
@brad-richardson brad-richardson marked this pull request as ready for review February 18, 2026 19:00
Copilot AI review requested due to automatic review settings February 18, 2026 19:00
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Adds support for viewing and accepting TomTom-sourced roads from Overture’s transportation PMTiles, including client-side conflation against existing OSM highways and auto-connecting accepted endpoints to nearby routable OSM ways.

Changes:

  • Introduce new tomtom-roads Rapid dataset backed by Overture transportation tiles, with mode-aware conflation/filtering.
  • Enhance actionRapidAcceptFeature to optionally auto-connect accepted way endpoints using the editor’s spatial Tree, including limited tag inheritance for highway=road.
  • Update rendering/UX and add unit + browser tests for the new transportation pipeline and auto-connect behavior.

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
test/unit/actions/rapid_accept_feature.test.js Adds unit tests for endpoint auto-connect, node merge, layer checks, and highway tag inheritance.
test/browser/services/OvertureService.test.js Adds browser tests for transportation source parsing, tag mapping, sampling/conflation behavior, and transport feature filtering.
modules/ui/UiRapidInspector.js Passes editor.tree into actionRapidAcceptFeature so auto-connect can use the current spatial index.
modules/services/OvertureService.js Adds transportation dataset, conflation/filtering, and GeoJSON→OSM line conversion helpers.
modules/pixi/PixiLayerRapid.js Renders Overture roads as lines + endpoint vertices and resolves node coords via the Overture service graph.
modules/core/RapidSystem.js Adds tomtom-roads to default datasets list and ensures TomTom stays Rapid magenta.
modules/actions/rapid_accept_feature.js Adds optional tree parameter and implements endpoint auto-connect + limited tag inheritance.
data/l10n/core.en.json Adds localization strings for the TomTom Roads dataset label/description.
data/core.yaml Adds the same localization strings to the source YAML.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@jenningsanderson jenningsanderson merged commit bba6231 into main Feb 27, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants