Skip to content

D78 โ€” Router zone-fill probes through the DRC edge index

Decision

The router's obstacle tests answer probes against zone fills from the DRC's edge index (geom::PolygonIndex via drc::ZoneFills); the per-edge loop stays as the reference path

Alternatives

Keep the linear loop; index only the coupled-pair leg checks; cache fixed codes harder

Reason

The answers are equal by construction and by test, so it is a pure speed change: six KiCad demos at 10 M 515 โ†’ 119 s, CM5 with fills 21 โ†’ 1.6 s, every output byte-identical. Indexing one caller would leave the lattice codes and exact checks slow; caching does not help exact checks at new positions (doc 05 ยง31)