*Track heights aren’t published. I estimated them for all 272 stations from five surveyed anchors, terrain data and engineering priors, with a range on every point.*
**Summary:** An explorable 3D model of the Delhi Metro. Track heights for 272 stations are estimated from five known points, satellite terrain data and structure-class priors with shape-preserving interpolation, and every point carries a range.
**Status:** Live. **Year:** 2026. **Role:** Data engineering, modelling and visualisation. **Tags:** Estimation, Interpolation, Geospatial, deck.gl
---
```math p(s) = h_k H_{00}(\tau) + \Delta_k m_k H_{10}(\tau) + h_{k+1} H_{01}(\tau) + \Delta_k m_{k+1} H_{11}(\tau) ``` *The rail curve is a PCHIP interpolant: piecewise cubic Hermite in \tau = (s - s_k)/\Delta_k, exact at the surveyed anchors.*
```math {\frac{w_1 + w_2}{m_k} = \frac{w_1}{d_{k-1}} + \frac{w_2}{d_k}},\qquad{m_k = 0 \ \text{ if } d_{k-1} d_k \le 0} ``` *Background: PCHIP slopes are weighted harmonic means of the neighbouring secant slopes d, and zero at local extrema, so the curve never overshoots between known points.*
*Interactive figure: Track height along one line: the ground, the best estimate and its range. Pick a line.*
 *The full app runs in the browser with no server. Viaducts climb above the terrain; deep tunnels dip below it.*