Skip to main content

Combine

Combine performs boolean operations on whole bodies. Before a Cut — the block and the overlapping cutting body:

Two overlapping bodies before the cut

After — the cutting body is carved away:

The notched result after the cut

The four operations

OperationResult
CombineOne body containing everything in the picked set (union).
CutSide A with side B carved away (A − B).
IntersectOnly the material common to A and B.
DifferenceOnly the material not common to A and B (symmetric difference).

How to use it

  1. Pick the Combine tool and choose the operation. Bodies already selected are side A.
  2. Click bodies to add them. Two-sided operations have Side A and Side B pickers; click a picker to make it the active side. Re-clicking a body removes it.
  3. Keep B leaves the B-side bodies as real bodies (by default all inputs become shadow bodies).
  4. Press Enter.

Once every side the operation needs is picked, the result previews in the viewport — the side-A bodies give way to a translucent ghost of what committing would build.

A cut that severs a body into separate pieces gives one body per piece.

Help

The Combine tool's Context pane in Combine mode, each field explained

The Combine tool's Context pane in Cut mode, each field explained

Shadow bodies

Input bodies become shadow bodies: out of the 3D view and out of clicking's way until you hover or select them in the Elements pane, where they ghost translucently.

The operation element

The operation is an element with the new bodies nested under it. Edit operation changes the kind, inputs, or Keep B; deleting it restores the inputs. Result bodies are ordinary bodies, so operations chain.

Scripting

bearcad.combine{ op = "cut", a = {0}, b = {1}, name = "Notched block" }
bearcad.combine{ op = "combine", a = {0, 1, 2} }
bearcad.combine{ op = "intersect", a = {0}, b = {1}, keep_b = true }
bearcad.edit_boolean{ index = 0, op = "difference", a = {0}, b = {1} }
-- `begin_combine` takes the same arguments but leaves the tool armed rather than
-- committing, so the result preview is on screen for a screenshot.
bearcad.begin_combine{ op = "cut", a = {0}, b = {1} }

Good to know

  • All four operations undo as a single step.
  • Shadow bodies can't be picked into another operation — edit or delete the operation that owns them instead.