Skip to main content

boolean_up_to_next

Function boolean_up_to_next 

Source
pub fn boolean_up_to_next(
    model: &mut NamedModel,
    namer: &Namer,
    target: SolidId,
    tool: SolidId,
    op: BooleanOp,
    (start, end): (&str, &str),
    params: RemeshParams,
) -> GeopResult<Reach<Option<SolidId>>>
Expand description

Like boolean — target combined with tool — but “up to next”: only the first piece of tool its face start reaches is combined.

For a BooleanOp::Union that is the first piece of the tool outside the target — growing from start until it runs into the target; for a BooleanOp::Difference or BooleanOp::Intersection, the first piece inside it — cutting, or keeping, from where the tool enters the target until it comes out of it again. The tool has to be long enough to reach past whatever stops it: if the piece also reaches its face end, nothing stopped it, and it Reach::RunsOn. start and end are the names those faces had before the boolean (see naming).