Project 03 · Interactive · Three.js

Two points
on a globe, one
curve between.

An interactive study that turns latitude and longitude into 3D space and joins them with a quadratic Bézier arc — drawn, rotated and zoomed in real time.

Fig. 1 — New York to London 40.71°N 74.01°W → 51.51°N 0.13°W
6
Preset routes
2
Points per curve
3
Plate themes
0
Build steps

How a curve is drawn

Read the method →

(a)Lat/lon → x, y, z

Each coordinate is projected onto a sphere of radius r = 20.

(b)Lift the control point

The midpoint is pushed outward so the arc clears the surface.

(c)Sweep a tube

A TubeGeometry follows the curve so it reads at any zoom.

Plate II

Routes, catalogued

Browse all routes →

Colophon

Built small,
on purpose.

Rendering

Three.js r128 with a Lambert-lit sphere, a graticule and TubeGeometry arcs.

Interaction

OrbitControls for drag and zoom; press H to hide the panel, D to draw.

State

Settings and saved routes persist in localStorage; every route has a shareable link.

Hosting

Static files on GitHub Pages — no bundler, no build.