Explore¶
Five stages, one block. Everything below follows the same Cape Town block, from the city-wide screen that first flagged it to the method frontier that scores the roads through it. Every control writes to the address bar, so a view you find here is a link you can paste into a review.
Screening¶
A metro has far too many blocks to reblock every one of them, so the pipeline opens with one cheap number per block and a floor on it. Drag the floor and watch the selected pool grow and shrink; switch the metric to see how much the choice of number matters. Switching to Nairobi lands the same absolute floor on a corpus it was never calibrated against — which is the whole reason the floor is a score and not a percentile. The ringed block is the one every stage below follows.
depth_density_proxy floor. Red fills the 3,169 of 18,309 blocks the screen selects, whatever the survey says; gold, the informal settlements in the City of Cape Town's own survey that it does not; grey, the rest — precision 20.0%, recall 81.9% against that survey. The blue ring marks ZAF.9.3.1_1_5810, the one block the rest of this site follows — a ring rather than an outline because a whole metro fitted into one figure leaves that block far too small for its own boundary to be a shape anyone could pick out. Switch metric, drag the floor, or toggle to Nairobi — 334 of 3,839 blocks at the same absolute floor, with no equivalent informal-structure survey to check them against, so no precision or recall is shown for that city. Colour by score instead, and each block is shaded by its rank among the blocks on its side of the floor: blue below, pale at the floor, red above, on a dark ground. The map opens on the selection because the precision and recall are its red fill's.Growth¶
A block is rarely the right unit of work: the roads that would serve it run through its neighbours, and a road that stops at a boundary serves nobody on the other side. Growth takes a seed block and accretes neighbours greedily until a building budget is spent. Drag the budget to watch the region grow, and click any block in the neighbourhood to reseed from it. The greedy runs in the browser rather than replaying a recording — which is what makes both of those controls live — and it is checked block by block against the accretion runs the bundle records, so the rule you are dragging is production's.
dense_cluster grows from seed ZAF.9.3.1_1_5810 at the slider's default budget of 7,500 buildings — 3 blocks, 7,911 buildings. Click any shipped block to reseed, or drag the budget slider down to its floor of 6,500 buildings, and the region collapses to the seed alone (1 block) — 6,619 buildings on the seed against a 6,500-building floor. This is not a miscalibrated default: max_buildings is a block budget under a data source that reports no per-block building count, and a building budget here, where per-block counts run into the hundreds — one constant, two regimes.Permeability¶
Permeability is the number the methods are scored on: how easily every parcel drains to the street. Drag the road prefix to add roads in the order the method builds them, and watch current concentrate into each new road while the permeability beside the picture climbs. Grey edges are the footpath mesh the metric solves over, blue ones the edges a road raised, and node colour is egress potential — hover the picture to read the nearest node's own.
Displacement¶
A road that reaches everyone by demolishing everyone is not a solution, so every road is charged for what it costs. Displacement asks what share of each building's footprint the road's corridor covers. Drag either road's endpoints, widen the corridor, and switch the second road on: two overlapping corridors are charged once, not twice, which is why the cost is a property of the road set rather than a sum over roads.
ZAF.9.3.1_1_5810: every one of its 6619 buildings is drawn as its outline, the road corridor runs beneath them, and each building is shaded by the share cᵢ of it the corridor takes. The road drawn here is one road at the 7 m floor, and it costs 91.9 buildings — 1.4% of the block. Drag either end of a road, widen the corridor, or switch the second road on. Switched on where it is baked, the two roads cost 187.3 between them; dragged onto each other, the same two cost 91.9 — exactly what the one road costs, because what is charged is the union of the roads' own buffers, so the overlap is paid for once.Methods¶
Every method is a different answer to the same trade — permeability bought with displacement — and each curve traces one method's build-out, sample by sample, from no road at all. Set a displacement or a permeability target and the verdicts under the chart say which methods clear both, and at what least road. Click a method's name to isolate its curve, and again to bring the others back.
ZAF.9.3.1_1_5810, every method overlaid. The two dashed guides are the calibrated standards every method here is graded against — 10% displacement and 60% permeability. Drag either guide, or use the sliders, to ask which methods clear it and at what least road.