1.8 KiB
1.8 KiB
union_rsolid
API Definition
def union_rsolid(
*solids: Union[Solid, Sequence[Solid]],
clean: bool = True,
glue: bool = _DEFAULT_UNION_GLUE,
tol: Optional[float] = None,
tracking_policy: TrackingPolicy | str = TrackingPolicy.FULL,
) -> Solid
Source: operations.py
Import Surface
- top-level:
from simplecadapi import union_rsolid
Description
Compute the boolean union and return one solid.
Accepts standalone Solid objects, lists of Solid, and nested sequences,
but always returns exactly one Solid. If the kernel cannot produce
exactly one solid result, the API raises a clear error instead of
returning multiple pieces.
Parameters
solids
- Description: One or more Solid objects or sequences of Solid. Nested sequences are flattened before processing.
clean
- Description: Unify same-domain faces and remove splitter edges when possible.
glue
- Description: Enable OCC glue mode for touching or partially overlapping inputs. Defaults to True for SimpleCAD's standard union behavior.
tol
- Type:
Optional fuzzy-boolean tolerance used by the OCC union kernel. When - Description: omitted, SimpleCAD chooses a conservative scale-aware tolerance.
tracking_policy
- Description:
TrackingPolicy.FULLcomputes topology history and lineage.TrackingPolicy.GRAPHpreserves the canonical union node, parameters, inputs, result topology references, and replay while omittingTopoDeltaand history-derived topology lineage. Geometry optionsclean,glue, andtolare unchanged.
Returns
Solid: The merged union result.
Examples
body = make_box_rsolid(10, 4, 4, bottom_face_center=(0, 0, 0))
rib = make_box_rsolid(2, 4, 4, bottom_face_center=(4, 0, 0))
merged = union_rsolid(body, rib)
print(merged.get_volume())