← Alle projecten

Persoonlijk · 2026

PlanesView

Al het luchtverkeer live op een fotorealistische globe, en het uitzicht vanuit de cockpit van elk vliegtuig.

De kaart: al het luchtverkeer live op een fotorealistische globe
De kaart: al het luchtverkeer live op een fotorealistische globe
In de cockpit van een vliegtuig in de nadering, met de andere toestellen eromheen
In de cockpit van een vliegtuig in de nadering, met de andere toestellen eromheen
De homepage van PlanesView
De homepage van PlanesView

Het verhaal

De oorspronkelijke briefing zei „geen backend”. Ik heb, aanbieder per aanbieder, de CORS-headers van de ADS-B-feeds gemeten: vier ADS-B-aanbieders weigeren aanroepen vanaf een webpagina. In plaats van de beperking „gratis, zonder sleutel, zonder account” op te geven, ontwierp ik een minimaal relay met toegestane lijst dat alleen in een bestand vastgelegde oorsprongen kan bereiken.

De posities komen ongeveer eens per seconde binnen. Om een vloeiende beweging van 60 beelden per seconde te krijgen zonder ooit een „te laat” vliegtuig te tonen, wordt elk toestel gevolgd door een Kalmanfilter met constante snelheid, opgesplitst in twee filters per as (4 termen om te propageren in plaats van 16).

De globe is een quadtree van tegels: een tegel is nooit leeg (hij leent de textuur van zijn voorouder), het detail wordt scherper met een overgang, een ouder wordt pas vervangen als zijn vier kinderen zijn gebouwd, en de IndexedDB-cache wordt voorverwarmd langs het traject.

Wat ik eruit meeneem

Meten voor je beslist: de briefing klopte op één punt niet, en het juiste antwoord was een klein, strikt begrensd relay. Ik leerde ook dat „aannemelijk foute” wiskunde (geodesie, projecties) de wiskunde is die de meeste tests nodig heeft.