mirror of
https://github.com/bherbruck/solidcraft.git
synced 2026-11-08 13:01:52 +00:00
61dbdafbec
Real calls replace the UNPORTED(query.brep) stubs of SmBrep:: CalculateBoundingBox (topology.brep_p1/p9/p10, heal.stitch_p1/p2, blend.hcr, mass.integrator, query.api_queries incl. the tight box), SmLockBrepBox (topology.brep_p1, and topology.brep_p5's SqueezeFace whose stubs named topology.brep_p1) and SmTemporaryBrepTransform (boolean.merge_p1: boxes before any transform, as upstream, then TemporaryBrepShift::apply). Kernels are threaded where a caller had none; ignored statuses stay ignored. topology.brep_p6 stops after its real box at an OMITTED marker for its own remainder (SmBrep.cpp:27966-28583). Callers that cannot reach a ported function keep returning Unported under a DISPATCH GAP comment naming it: Point3DClassify (merge_p1/p4/p5, proto_topology_p3, api_queries), the ShellRayWorld defaults, p9 RayFire, p10 MergeCurvesOnSurface and geom.object's SmShape over B-rep keys. Runner fixes for the newly reached paths, from bherbruck's #332: geom.a_object attaches a built cache (SetCacheObj), boolean.merge_p4 owns imported geometry as its adapter keys it, boolean.topology_intersector_p1 keys its cache by its notification keys, mass.integrator builds the shim's wire-edge B-rep. topology.brep_p2 builds its RayFire cache. Fixture coverage, also prompted by #332: a shared B-rep kind with up to 600 vertices and 150 wire segments at given tolerances (reaches the 500-vertex/100-edge approximation shortcut and non-default tolerance expansion); attribute ids and sort indices carried as exact 32-bit halves (full ULONG width); the classification guard accepts any finite point and tolerance (negative and huge tolerances, 1e100 points). difftest: PARTIAL query.brep cases=1170 passed=923 failed=0 deferred=247; perturb 923/923. 0 failed in every touched unit; geom.a_object PASS 2040/2040 (was 1909); more passes in merge_p1 (+11), merge_p4 (+50), topology_intersector_p1/p2 (+6/+5), stitch_p1/p2 (+3/+31), offset_executive_p1 (+1), api_queries (+126), topology.brep_p1 (+71). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>