Highlights
- Critical regression fix. v0.3.0 shipped a quadtree with a broken
split()that silently orphaned most of the index when straddler items piled up at an internal node. On non-UTM drawings the bulk of geometry vanished after pan/zoom — only ~5 % of indexed entities were reachable from the query. The split path now only fires on leaves, so the entire previous subtree is preserved. - Degenerate-bbox entities now render. v0.3.0's quadtree path also silently dropped any entity whose
bounding_box()returned the degenerate default — points, broken polylines, etc. The fallback that the legacyentity_aabbprovided (treat asUNBOUNDED_AABB, never cull) is now part ofScene::entity_index: such handles go into a parallel always-emit list that the wire path appends regardless of view.
Fixes
- quadtree:
split()on an internal node was orphaning the entire subtree (416b0d4) - scene: emit entities with degenerate bbox from the quadtree path (b4745ef)
Chore
- quadtree: silence dead-code warnings on planned API (0ec5601)
Full Changelog: v0.3.0...v0.3.1