A straight line on a map is not the shortest path. Routes are drawn as the great circles they are flown on, and the straight screen line can be drawn beside one with its length measured on the ground. A route with no position is a still plan; the flown leg ends where the aircraft was reported, and a fix off the route says how far off it is. A fix is LIVE only while it is fresh and has moved since the report before, and only a live fix pings; a stale, undated or future fix is hollow and says what it is. Fresh fixes print their clock time, never an age that would stop counting when the reports stop. Country outlines are opt-in data, and asked for and missing is said. Every route here is simulated.
import 'overscan'
import 'overscan/overscan.css'
<ov-geomap
id="world"
countries="../src/ov-countries.js"
naive
fresh="30"
></ov-geomap>import { OvGeomap } from 'overscan/react'
<OvGeomap
id="world"
countries="../src/ov-countries.js"
naive
fresh="30"
/>import { OvGeomap } from 'overscan/vue'
<OvGeomap
id="world"
countries="../src/ov-countries.js"
naive
fresh="30"
/>import OvGeomap from 'overscan/svelte/OvGeomap.svelte'
<OvGeomap
id="world"
countries="../src/ov-countries.js"
naive
fresh="30"
/>LHR-NRT reports every 2 s and moves; JFK-LHR stopped reporting eleven minutes ago; SFO-SIN has no position; LAX-GRU reports without moving, far off its route. The dotted lines are the straight screen lines.
Outlines asked for and never given; a source that never answers; fixes with no time, a time ahead of this clock, and a route with no end.