Ships don't travel in straight lines.
Shanghai to Felixstowe is 18,972 km of actual sailing — through Malacca, past Bab-el-Mandeb, up the Red Sea, through Suez, out at Gibraltar. The straight-line great circle is 9,176 km. Anyone quoting you transit off a point-to-point distance is out by a factor of two. This routes over real canal, strait and cape waypoints, and shows what happens when Suez closes.
Dijkstra over canal, strait and cape waypoints. Not over land.
Enter a UN/LOCODE (CNSHA), an ISO2 country code (CN) or raw coordinates as "lat,lng". Set the vessel draught and a canal too shallow for the vessel is excluded from the graph — which is how you find out you're on a Cape routing before the carrier tells you.
Indicative · a graph over canal/strait/cape waypoints, not a navigational chart · not for passage planning
What this is — and what it isn't.
A routing graph, honestly built
A shortest-path search over a network of canal, strait and cape waypoints. It will never route you across a continent, and it names every waypoint it used so you can sanity-check the path yourself.
Not a navigational chart
It doesn't know weather routing, traffic separation schemes, seasonal ice limits, piracy exclusion zones or your carrier's actual port rotation. Do not use it for passage planning. Use it to sanity-check a distance and a transit claim.
The Cape number is the risk number
Red Sea disruption turned the Cape diversion from a hypothetical into a live routing for a lot of Asia–Europe traffic. When your route uses a canal, the tool always shows the alternative distance and transit so you can price the downside before it happens.
Transit is distance ÷ speed
Pure sailing time at the speed you enter. No port calls, no waiting for a berth, no canal queue, no bunkering. Real port-to-port transit is longer — treat this as the floor, not the schedule.