SmApiBoolean#
Defined in SM_API/inc/SmApiBrep.h
- SmApiStatus SmApiBoolean(
- SmBrep *pBrep1,
- SmBrep *pBrep2,
- SmBooleanOperationType lOperation,
- SmBrep *&rpResult,
Two-Brep Booleans (SmApiBoolean, SmApiBooleanUnion, SmApiBooleanDifference, SmApiBooleanIntersection, SmApiBooleanMerge, SmApiBooleanWithCurves, SmApiBooleanWithOptions, SmApiNonManifoldBoolean), in addition to the per-parameter notes:
pBrep2 is not deleted for SM_BO_PARTIAL_MERGE, SM_BO_IMPRINT_CLASSIFY, or SmApiBooleanWithOptions with bKeepOtherBrep = TRUE. SM_BO_IMPRINT does delete it.
A NULL operand, pBrep1 == pBrep2, or SM_BO_EXTRACT_SEPARATE (which has no single result) returns SM_ERR_INVALID_INPUT with both inputs untouched.
rpResult is NULL on failure.
- Parameters:
pBrep1 –
[in/out]: Modified in place and returned as rpResult on success;
remains allocated but may be modified on failure
pBrep2 –
[in ]: Deleted on success; remains allocated but may be modified
on failure
lOperation – [in ]: specify boolean operation
rpResult – [out]: Aliases pBrep1 on success; NULL on failure