mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-08 13:01:52 +00:00
5acb2c8ae4
- SubdivideNode: split into SurfaceCache::subdivide_node_split plus the base class ending; TrimSrfCache splits through its own subdivide_node, which re-implants a boundary parent's edge uses into the children with TrimSrfCache::implant_edgeuse (needs SmEdgeuse::GetUVTrimCurve: those cases defer on topology.edgeuse_p1; poly edges on query.poly) instead of dropping them through the base ImplantEdgeuse. - trim_srf_cache shim and runner: ImplantEu prints every node of the tree (the children subdivisions make included); fixture implant_then_split_boundary_leaf. - FFI accepts planes where it asked for a B-spline cache (an SmPlane is an SmBSplineSurface); the generator uses them; the tolerance test reads a plane's NURB through base_for_query (found by the new plane cases). - DISPATCH GAP comments for GetTree's virtual BuildTree and SubdivideNode's GetTree; the bare-tree patch data reads (geom.tree, geom.grid, surface_p2) are dispatch gaps tagged with their owning units, not surface.surface_cache_p3. - Stale docs and notes fixed; findings for the review points. surface.surface_cache_p3: 445 pass, 0 fail, 155 deferred, --perturb 445/445. surface.trim_srf_cache: 526 pass, 0 fail, 95 deferred, --perturb 526/526. difftest --green: 117 units, 0 failed. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RsMto2bEoBSCSCJku4nT4u