Making Sparse Data Move—and Land on the Ground
God's Eye View has to solve two different problems before an aircraft can feel present on the globe: it must decide where the aircraft is between source updates, and it must decide which vertical surface the aircraft belongs to. This chapter follows those decisions from source-stamped fixes to the displayed object. The practical result is a better reading of the map: a smooth aircraft icon is a time-and-height policy, not a continuous sensor feed, and a visually grounded model is not necessarily reporting a new altitude.
The aircraft is a timed display, not a live cursor
An aircraft feed may update every 15 or 30 seconds, while the browser can draw many frames in that interval. If the application simply moved an icon whenever a new response arrived, the plane would jump, pause, and jump again. If it extrapolated forever from the latest response, it would eventually drift away from reality. God's Eye View chooses a middle path: it renders aircraft one poll interval behind real time, interpolates between known fixes when possible, and uses bounded dead reckoning when the delayed display has reached the newest fix.
The delay is deliberate. Suppose two source fixes are stamped at times A and B. The display clock is held back far enough that it usually sits between them. Instead of guessing beyond the newest observation, the renderer can move the icon along the segment between two positions that the source actually reported. That makes the movement smooth without claiming that an intermediate point was independently measured. The cost is freshness: the picture intentionally lags the most recent source message.
When there is not yet a pair of fixes around the delayed display time, the layer still has to start gracefully. During warm-up it projects the oldest known fix backward for the delayed display time, then glides into ordinary interpolation as history accumulates. Holding the oldest position would create a visible freeze; jumping to wall-clock “now” would later pull the icon backward when the delayed interval became available. Both effects would make the visual transition reveal the implementation rather than the aircraft's motion.
Once the display reaches the newest known position, the layer dead-reckons. In plain terms, it advances the aircraft using its last known ground speed and course in a local East-North-Up frame. ENU is a coordinate frame attached to the Earth at the aircraft: east, north, and up are easier to reason about for a short movement than repeatedly treating latitude and longitude as a flat plane. The projected local movement is then converted back into a world position for Cesium.
A straight projection is not always enough. The motion model estimates whether the aircraft has been turning and, when the evidence supports it, integrates a constant-rate turn rather than extending a straight tangent. That matters particularly during a stale interval: a plane that keeps turning can be far from a straight-line projection after half a minute. At the same time, low-speed course information is treated cautiously. A hovering helicopter's fix-to-fix displacement may mostly be GPS jitter, and a taxiing aircraft can produce a noisy chord. At low speed the renderer leans on the reported track or holds the previous course instead of allowing noise to manufacture a dramatic turn.
The course shown on the screen belongs to the position being displayed. Between fixes, the layer can derive a course from the movement segment and blend it with the reported track according to speed. During coasting it uses the integrated arc's changing course. That avoids a common visual contradiction: an aircraft appears to travel one way while its symbol points in a direction taken from a later or unrelated source field.
A new fix still may disagree with the position the display has reached. Rather than snap the object back to the new raw position, the tracked path detects a discontinuity and decays a correction over time. The displayed track stays continuous while it converges toward the source. Tracking, the trail head, the detection bracket, and the label readout consume a shared per-frame display cache. If each consumer dead-reckoned independently at a slightly different moment, the plane, camera, trail, and label would disagree even when they all used the same feed.
The system also needs a stopping rule. If a position fix is old, the plane can coast through a bounded grace period, but not indefinitely. The source may still be receiving contact or velocity information after the last position timestamp, so the layer uses the freshest contact evidence to choose a grace horizon. An absolute ceiling prevents a stale cached feed from carrying an aircraft across the world forever. If the source goes quiet, the interface marks the contact stale instead of presenting the extrapolated position as a new observation.
This creates a useful hierarchy of claims. The source fix is an observation. The interpolated position is a display estimate constrained by two observations. The dead-reckoned position is a bounded projection from one or more observations. The stale cue describes the condition under which that projection is being used. None of these labels makes the aircraft position worthless. They tell you what kind of worth it has.
The same logic explains why the layer does not simply “fix” its latency by jumping to the newest message. Removing the delay could make the display look more current at a glance, but it would give up the bracket of known fixes that makes interpolation possible. God's Eye View chooses a stable visual relationship over the appearance of zero latency. That is a product trade-off, not a hidden flaw to be inferred away.
Height is a second coordinate problem
Horizontal motion is only half the problem at an airport. An aircraft record can carry an aviation altitude, a barometric height, or a ground-related flag. Cesium renders positions relative to the WGS84 ellipsoid, an abstract reference surface used by the globe. The visible world may instead be represented by a geoid-aware terrain path, a bare-earth digital elevation model, or Google's photogrammetric 3D tiles, whose roofs, ramps, and other structures sit above bare earth. Treating these references as interchangeable can put a plane inside a hill, below an apron, or above a runway.
God's Eye View keeps a ground-height chain rather than silently rewriting the aircraft record. Its terrain resolver asks a server-side Re:Earth endpoint for ellipsoidal ground heights, rounds coordinates to stable cache keys, sends large batches in sequential chunks, and falls back to bundled geoid math when the proxy is unavailable. The fallback is useful as a prior, but it is not always a sufficient visual surface. At an elevated airport, a geoid or sea-level-style fallback can be far below the runway. A floor built on that value could make the scene consistently wrong while reporting no obvious network error.
The shared floor is therefore coarse by design. It groups locations into cells of roughly 111 meters, reuses resolved values, and reads the cache synchronously on the render path. Missing cells are warmed outside the immediate paint decision in bounded batches. This keeps a frame from blocking on network I/O and prevents every moving contact from inventing a new request. The trade-off is spatial precision: relief, roofs, terminal edges, and steep slopes inside one cell can differ from the cached floor.
The display position matters more than the source fix. An aircraft may receive a ground height at one coordinate and then be drawn several metres or more away while it interpolates or coasts. If the floor is attached only to the fix, the sprite can sink below the mesh it has visibly moved over. The layer therefore warms the corridor ahead of the displayed contact, using the same straight or turning path as its motion model, and applies the floor at the position the reader actually sees.
In the Google photorealistic regime, bare-earth terrain is still not the final visible surface. The renderer samples the photogrammetric mesh near the viewer, after the relevant tiles have settled, and accepts the sample only when it is plausible against a real DEM prior. The asymmetric check reflects the actual risk: a mesh can legitimately stand above bare earth, but a vertical probe can also hit a roof, an aircraft, or a coarse tile. A number returned by a graphics query is not automatically trustworthy ground evidence.
That check is intentionally conservative. A mesh sample without a real terrain prior is not latched as a permanent answer, because the first value might come from a coarse level of detail and poison every later placement in the cell. The application waits for enough independent context to judge the sample. If a probe is unavailable, the system retains whatever source-backed fallback it can honestly use rather than inventing a precise surface.
Grounded 3D aircraft need an additional rule because a glTF model is depth-tested against the scene. A billboard can be kept visible even when its height is imperfect; a model placed at a bad height can disappear into the tiles or hover above them. The ground-snap cache takes one successful rendered-surface sample for a grounded model and reuses it while the aircraft remains close to the sampled location. A cold contact—one that has never received a valid mesh snap—keeps the depth-test-free billboard. A warm contact that has taxied away can hold its last measured placement for a bounded distance while a new sample is attempted, avoiding a distracting 3D-to-2D-to-3D flicker during a short outage.
The hold is evidence with a lower rank, not a new measurement. It is dropped when the aircraft travels too far or when fresh mesh evidence at the current position contradicts it in the direction that would bury the model. The policy is deliberately asymmetric. A held value that is somewhat too low may leave the model visible or cause the ordinary floor chain to do nothing; a held value that is too high can make an aircraft float above a terminal roof. The system prefers a visible upward error to a buried model, but it documents the possibility of that float when a downhill move lacks a successful resample.
This is also why source descriptions retain sensor truth. If a grounded icon is raised to clear a photorealistic mesh, the aircraft's reported barometric altitude has not changed. Queries and readouts should continue to describe what the source reported, while visual consumers use a placement that is safe for the current rendered surface. One value answers “what did the feed say?” and the other answers “where should the object be drawn so a reader can see it?”
The resulting picture is coherent but not survey-grade. A coarse cell can miss local relief. A fast aircraft can cross ground that has not warmed yet. A rendered mesh can remain unavailable, and an OSM or geoid path may lack the photogrammetric surface entirely. A stale aircraft can continue along an estimated path within its ceiling. Those are not defects to hide behind a smooth animation; they are the conditions under which the animation should be interpreted.
God's Eye View's motion and height systems therefore share one discipline: preserve the source, make the visual useful, and keep the transformation visible enough to bound the claim. The object on screen is neither raw telemetry nor fiction. It is a rendered estimate assembled from source evidence, timing policy, coordinate conversion, and the best validated surface currently available. The next question is how to read that estimate alongside other layers without confusing a clean display with complete knowledge.