Files
firestar5683 ab81464bd1 Maps
Add navigation and map matching providers with the vendored map service sources.

Co-authored-by: Daniel Koepping <elkoled@gmail.com>
Co-authored-by: Danny <dannyirwin31@yahoo.com>
Co-authored-by: Prabhaav Pillai <prabhaav@msu.edu>
Co-authored-by: dirwin31 <83434411+dirwin31@users.noreply.github.com>
2026-10-14 19:56:17 -05:00

2.1 KiB

Conservative loaded-tile road ambiguity

Before retaining a current road or taking a predicted road, mapd checks every way in the currently loaded tile against the current GPS fix. A candidate needs a positive OSM way ID, at least two nodes, and a successful existing OnWay(fix, 2) test. That test uses the projected distance, reported horizontal accuracy (with its existing 5 m floor), way width, and one-way/direction rule. Repeated tile records with the same way ID count once. Rank, road class, posted limit, name, and heading alignment do not resolve a tie.

No candidates produce noMatch. One candidate uses the current loaded tile's way geometry and still has to pass the existing narrower selection threshold to become a new match; the broad 2x ambiguity envelope alone never grants a match. A zero posted limit on a matched way remains matchedNoLimit. Two or more distinct IDs produce a neutral invalid unknown output. The state clears its current way, upcoming evidence, curve output, accepted/override limit, and numeric map limit before serialization. This applies even when the prior way would pass the sticky check or a predicted way would pass its shortcut. A way retained from another tile cannot be published when the loaded tile has no plausible way.

Adjacent OSM ways, junctions, and parallel roads may overlap this conservative uncertainty envelope. Availability will therefore decrease, including some ordinary transitions between adjoining segments. A sole candidate remains unqualified: a tile can omit a road, be stale or wrong, or provide inaccurate geometry/posted limits. This change does not activate the StarPilot SLC map consumer or grant map speed-limit authority.

The packed synthetic-tile tests cover parallel and crossing competitors, prior sticky and predicted ways, empty tile and new-fix recovery, duplicate IDs, a sole road admitted only by the broad envelope, genuinely unique direction-sensitive one-way roads, and no posted limit. A 64/256/1024-way benchmark checks enumeration cost; it does not establish worst-case device performance or justify a spatial index.