pub struct BooleanOptions {Show 13 fields
pub tolerance: f64,
pub tolerances: Option<KernelTolerances>,
pub imprint: ImprintOptions,
pub merge_coplanar_faces: bool,
pub keep_unmerged_name_substrs: Vec<String>,
pub untouched_passthrough: bool,
pub disjoint_fast_path: bool,
pub contact_fast_path: bool,
pub touched_assembly: bool,
pub sector_classification: bool,
pub sheet_trim: bool,
pub keep_cells: bool,
pub seam_reseat_later_references: Option<Vec<String>>,
}Fields§
§tolerance: f64§tolerances: Option<KernelTolerances>Optional complete accuracy/search policy. tolerance remains the
backwards-compatible model-identity shorthand when this is absent.
imprint: ImprintOptions§merge_coplanar_faces: boolCoalesce adjacent result fragments after assembly. This defaults to true to preserve the kernel’s normal clean-boundary behavior.
keep_unmerged_name_substrs: Vec<String>Face-name substrings that PIN a result face out of the coplanar/cosurface
merge (only consulted when [merge_coplanar_faces] is on). A face whose
name CONTAINS any of these is emitted unchanged instead of being
coalesced with a mergeable neighbour; faces matching none merge exactly as
before. Default empty — no caller sees a behavior change unless it opts
in. Sheet metal uses this to keep every thickness/side wall face per
outline segment in the folded solid (so a flange can still attach to a
specific segment: fusing two collinear thickness faces would erase the
segment boundary).
untouched_passthrough: boolOn by default since the 2026-10-10 census read the 94-case manifest
unchanged with it; BREP_UNTOUCHED_PASSTHROUGH overrides either way
(0 off, anything else on).
disjoint_fast_path: boolOn by default since the 2026-10-10 census;
BREP_DISJOINT_FAST_PATH overrides either way (0 off, anything
else on).
contact_fast_path: boolLane X row 12: when, in at least two axes, one operand’s control-net
box ends at or before the other’s begins (exactly, no band), the
operands can share no interior and touch on a line or at a point: the
disjoint path’s answers hold. Every control weight must be positive
(the hull property), both operands plain solids, and the caller must
say what follows (seam_reseat_later_references is Some), so a
caller that cannot keeps today’s ids. On by default since the row 12
census; BREP_CONTACT_FAST_PATH overrides either way (0 off,
anything else on).
touched_assembly: boolOFF by default: the 94-case census read unchanged with it, but the
kernel battery’s offset_subtract_fixture pins a result whose
untouched planar face carries an open trim joint of 8.7e-4 from its
coarse polyline operand, which the whole-solid joints pass closes and
the scoped pass leaves as the operand had it; and the row buys no
measurable time (the record of 2026-10-10). BREP_TOUCHED_ASSEMBLY
overrides either way (0 off, anything else on).
sector_classification: boolOn by default since the 2026-10-11 census (the whole kernel battery,
the 94-case manifest and hlr_tests green with it on, every manifest
fragment the sector decides agreeing with the ray cast);
BREP_SECTOR_CLASS overrides either way (0/off the escape hatch,
check for the differential run that logs disagreements to
BREP_SECTOR_CENSUS, anything else on). Appended at the end of the
struct (2026-10-11).
sheet_trim: boolNon-manifold plan 1.6: trim a declared Sheet by a Solid with Intersect. On after the 2026-10-14 Sheet census and whole-kernel qualification. BREP_SHEET_TRIM overrides this option (1 enables, 0 disables).
keep_cells: boolPreserve the closed operand regions at a lower-dimensional union contact as explicit cells. Opt-in pending the Cellular census. BREP_KEEP_CELLS overrides this option (1 enables, 0 disables).
seam_reseat_later_references: Option<Vec<String>>The references later features hold (their inputParams text), when
the caller knows them: Some admits the operand seam re-seat
(BREP_SEAM_RESEAT, lane X row 11b) for every cylinder wall none of
them names; None (the caller cannot tell) never re-seats.