Port the Dart query's _ConeBins to the native library. A query now walks the edge tree nearest node first, files each edge it may see into angular bins, proves each bin's depth from runs of ring edges crossing it, and skips nodes, edges and corners that lie provably behind those depths. Each ray then tests only its own bin's edges, nearest first. Outlines are bitwise the same as a literal port of the Dart query, and the cone oracle finds no shape a reference ray disagrees with on all 26 map sides. Rays drop about 2.5x and edge tests about 15x; the oracle's p99 goes from 3.5 ms to 1.6 ms. Ray casting is now about a tenth of the query, so the thread pool and its priority boost are gone and the query runs on the calling thread. Box culling reads the two silhouette corners of a box rather than all four around its centre: the same span for two atan2 calls instead of five. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Dara Adedeji committed on 10/6/2026, 12:55:33 AMparent532aa7a
2 files changedLine totals unavailable