Repository navigation
CAD Translated Solid Intersection 2002
The primary modeling API can intersect one exact translated direct affine extrusion with the distinct other direct affine extrusion. This is a bounded child of BREP-05 (#535) and Feature Graph (#551). The parent commercial requirements remain open.
The first four nodes are two distinct affine sketches and their two direct extrusions. Each extrusion consumes its own earlier sketch. Either source may be translated. Node4 is that exact owned translation; node5 is its terminal intersection with the distinct other source. Both operand orders are admitted. All valid topological orders of the four source nodes are accepted. Six nodes, two sketches, two extrusions, one translation, one intersection.
Rectangle, convex polygon and constrained-polygon sources retain existing extrusion from semantics. Shared or unused sketches, extra siblings, circles, finished or other transformed operands, pattern copies, repeated translation, other Booleans, and any later feature do not enter this recipe. Existing direct/direct intersection and its supported chamfer, standalone translation graphs and rotation→placement remain compatible.
No Native kernel changed. The existing translation provider reconstructs and qualifies a fresh B-Rep with eight typed local/global lineage mappings. The existing intersection provider consumes the actual translated Solid, reconstructs both complete operands, clips all facets with exact arithmetic, preserves supporting original Surface coefficients, and qualifies the final trimmed B-Rep. Intersection lineage retains operand-qualified supporting facets and original edge intervals. It is not persistent naming or a copy bijection.
Offset-only edits reuse the four-source prefix and rebuild translation plus intersection. Save/Open retains the existing authored records and schema. Disjoint/contact attempts retain the original contact dimension and accepted save/bodies/evidence. Native representation errors retain their original typed cause.
The genuine finite campaign uses a pentagon [(0,0),(32,0),(32,16),(16,32),(0,32)] extruded8mm and a rectangle [8,-8]..[40,24] extruded4mm. Translation [offsetX,0,0] gives overlap2944mm3 at offset8 (7Faces/15Edges/10Vertices), and2304mm3 at offset16 (6/12/8). Five source evaluations cover baseline, edit16, face contact40 (dimension2), disjoint48 (dimension-1), recovery8. One fresh emitted-process load reproduces the baseline. One genuine overlap preview has16triangles. No automatic geometry retry or standalone Native validators.
Returned Native reports and source-derived known work are separate. Refused public frames expose only contactDimension, not their completed translation/empty-intersection reports. Hidden full transitive Native work is NOT_MEASURED. Native model and preview evidence does not establish Editor/GPU/browser/physical-file/manufacturing acceptance.
PASS:433 zero-Native controls (source222/emitted211), CAD build/lint, source/emitted modeling types, all22 complete docs examples. Genuine first-pass campaign:6 models+1 preview;3.900770s external serial group wall. All13 raw artifacts and268 original source input hashes independently matched. No geometry retry.
Returned work:225 source compilations /2790 binding observations /8370 D1. Available-known including initial Faces/sketches:257/3150/9450. Refused-work68/864/2592 is explicitly source-derived, never returned reports or instrumentation. Whole-derived325/4014/12042; hidden transitive NOT_MEASURED.
Immutable Native source pin: 27ce79f50d201fb7b6fcd6ecb1baddf6bc4f1624. Current public API pin: 4dbe8866aeca009e5539fee4c981f2d922fbbb5a. Committed verification. Normal PR#2005.
Normal PR#2005 merged into develop at ff34cacf851c1e4c50f60f1e7412cfb756e19997. Final tested head 053a31925ec828814687be059c1ed85d2c10891c is merge parent2; parent1 is 4d32b018d04df2135437bdb6c8366c31dd72f3a5. Issue#2002 is CLOSED for this bounded capability.
PASS on the final exact head: full CI, including Full lint types and builds and Test and Build; Loader CPU/types CI. Both earlier3dd8a9eb workflows also passed. A disjoint incoming GPU disposal fix required a base update; remote and preserved local update trees were identical. No redundant push or Native rerun followed. All268 Native input hashes stayed unchanged through adoption. Current public API9packages/76entries/4202occurrences and12manifest checks matched.
Authored product changes are only the CAD facade guard, docs, types/tests/evidence and generated current API metadata. No Native private provider, evaluation/cache/schema, Editor/GPU/Viewer/Loader/Physics/Render Editor implementation was authored in this task. Broader transformed Booleans and the commercial parent epics remain open.