Repository navigation
CAD Conserved Plane Split Usage
Tracking #1437; native prototype implemented at 3505af21fa1e563e1aec848b4452432baf4cf0f2 from 4d3ea536. Exact local adoption and actual GPU/Loader/Editor consumers remain separate. Complete frozen API/schema and consumer ledger retain source and delivery facts. No general commercial Split completion is claimed.
Public splitTranslatedStripBodyByPlane(request) constructs the full result. validateTranslatedStripPlaneSplit(result) reconstructs and returns Report. serializeTranslatedStripPlaneSplit(result) emits a small canonical authored recipe; parseTranslatedStripPlaneSplit(text) cold-reconstructs the original Body and both real output Bodies. The public error/diagnostic class plus Request/Options/Report/Result complete six runtime/four type names.
Request has the complete qualified original Body, actual source-backed cutAsset and exact options. Keep real source namespaces, selected IDs and eleven-stage output recipes from the frozen schema. Do not pass a mesh, Surface-only DTO, Boolean donor or the abstract direct-extrusion Shell. Cut is a SIDE endpoint donor; both outputs section against the unchanged original roof Plane.
node examples/cad-nurbs/translated-strip-plane-split-demo.mjs --source <output-directory> was the ONE native flow. Original qualified material volume1040mm³ and actual interior cutY3 produce390+650mm³. Public serialized recipe8240UTF8B was saved and freshly parsed to whole-result equality. A real wide native source edit changed all four cut Y poles3→4; the same original Body/IDs/recipes then produced520+520 and a second public codec result. FIRST build/flow0/0; no failure or retry.
Each output is independently qualified closed/embedded/outward restricted material with8vertices/12edges/6Faces/24Uses/8links/24arcs and catalogs16+2. Exact disjoint open interiors, union/material and volume conservation, common-cut images/opposite Uses and complete Face/Edge/Vertex lineage remain native authority. Floating observations are separate. The flow retained35 refusals,15OWNED/getter0 and full atomic caller/source/raw/file retention.
Original side supports are unit-weight degree1×1 2×2 affine X/Z charts with common basis/domains and constant Y endpoints. Cut is the same original X/Z chart and an interior constantY plane. Original roof remains qualified and unchanged. Rotated/curved/general cuts, new topology/material kernels and arbitrary connected components are unsupported by this increment.
Request6MiB/result12MiB and owned4M envelope; canonical authored2MiB. Actual MAINrequest694207/result2137460UTF8B. Each old Body2MiB, Source262144 in both encodings and Model16 remain unchanged. Valid request/result/authored overflow witnesses were not executed; do not claim every valid parent fits. Actual22 producers plus original validation1/cutcompile1 are24 direct calls, with descendant work and codec original11 cold reconstruction separately retained.
Native Save/Open is real public codec reconstruction. It does not establish CAD Editor file interaction or any rendered two-Body selection. #1446 tracks the Solid session, twelve-Face GPU/Viewer admission, cut handle/history/UndoRedo/physical Download/Open/re-edit. Existing1348/1325/1351 providers must be reused; actual render APIs and original1119gate remain separate. Development and runtime ownership/source units/IDs stay explicit; no product publication or broader accuracy/performance acceptance follows.