Skip to content

mesh-compile: carry a warped operand's slab width into a boolean's certified bound #266

Description

@GeneralPawz

Since #261/#257, a warped authored polygon face or a warped B-rep face without a surface compiles with a certified slab-width bound. Under a boolean, the same operand makes the whole result None/Unbounded: the exact compiler refuses those nodes, and the slab width is not carried into the boolean's report. A consumer (axioval) currently compiles every authored operand alone to detect warp, and refuses warped operands under booleans.

Done when

  • A boolean with a warped operand reports a certified bound that includes the operand's slab width. It goes through the operand-perturbation contract (ADR 0080, BooleanReport): the result is the exact boolean of operands perturbed within the reported deviation. Otherwise it is refused by name, with the reason stated in the deviation report; no Unbounded is returned without one.
  • Tests cover a warped authored box (one corner lifted, and a saddle) unioned and subtracted with a planar box. The bound must be at least each warped operand's slab width, meets_requested() must follow from it, and an unwarped pair must stay exact.
  • The doc for DeviationPath/deviation notes states how an operand's certified bound composes into a boolean's bound.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

needs-triageFiled but not yet accepted, sized, or scheduled

Type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions