Shape Booleans

Use Shape Booleans to combine splines into new shapes using Boolean operations.

Shape Booleans can be used to combine any combination of splines, both closed and open. You can also use the Seam controls to dynamically chamfer and/or fillet Boolean intersections.

Interface

Boolean Parameters rollout

Add Operands button
Click to add an operand to the compound shape from either the viewport or scene explorer.
Operands list
Displays the operands involved in creating the compound shape. Colored icons indicate the currently performed Boolean operation, as shown in the Operand Parameters rollout. The visibility of each operand can be toggled on and off by clicking the eye icon.
All operations applied to individual operands are carried out in sequence going from the top to the bottom of the list. You can reorder the operands in the list by dragging them.

Right-click an operand in list to access the following commands:

  • Remove Operand: deletes the operand from the compound shape.
  • Create New Boolean: creates a nested sub-Boolean within the compound shape.
  • Rename: changes the operand name. This option does not affect the name of the original added shape.
  • Disable: disables the operand from affecting the stack.
  • Solo: shows the operand without any operations performed on it.
Remove Operands
Removes the selected operands from the compound shape.
Open Boolean Explorer
Opens the Boolean Explorer window. See the Boolean Explorer topic for more information.

Operand Parameters rollout

Union
Unifies both shapes. The intersecting or overlapping portion of the geometry is discarded. Operands with Union applied are outlined in green when displayed in the viewport.

Two circle operands with Union applied

Intersect
Intersects the overlapping volume common to both original shapes. The remaining geometry is discarded. Operands with Intersect applied are outlined in yellow when displayed in the viewport.

Two circle operands with Intersect applied

Subtract
Removes the intersecting sections from the base (originally-selected) shape. This operation is also sometimes known as Difference. Operands with Subtract applied are outlined in blue when displayed in the viewport.

Two circle operands with Subtract applied

Symmetrical Difference
Applies the inverse of Intersect, cutting out the difference between the shapes. For example, if there are two operands named A and B and Symmetrical Difference is applied to B, the resulting operation would be A subtract B combined with B subtract A. Operands with Symmetrical Difference applied are outlined in turquoise when displayed in the viewport.
Merge
Finds all intersections between two shapes and merges them into one combined shape, where the splines are cut at each intersection point. This is a great way to manipulate complex shapes that you want to reassemble in other ways after converting to an editable spline. Operands with Merge applied are outlined in purple when displayed in the viewport.

Resulting vertices from circle and star operands with Merge applied and then converted into an editable spline. Note how additional vertices have been created at every point of intersection.

Attach
Similar to the Attach operation in Edit(able) Spline, combines the shapes of two operands without performing any calculations on the intersections. Operands with Attach applied are outlined in orange when displayed in the viewport.

Resulting vertices from circle and star operands with Attach applied and then converted into an editable spline. Note how the two shapes retain their original vertices.

Insert
Subtracts the bounding shape of Operand B (the newly added operand) from Operand A (the current result), leaving the shape of Operand B unaffected by the operation. Operands with Insert applied are outlined in red when displayed in the viewport.

Two circle operands with Insert applied

Imprint
Refines the intersection edges of the operands by inserting a knot every intersection point where the two splines cross. This is similar to the Refine operation in the Segment operations for Edit(able) spline. Operations with this option disabled cut (break) the segment at the intersection point.
Cookie
Performs the specified Boolean operation but does not add the operand to the final shape. Use this option to cut out specific shapes.
Tip: Enabling Cookie on an operand also applies the option to any operands below it in the Operands list. To remove unwanted cut-outs, you can drag the cookie-enabled operand to the bottom of the list.

Material group

Apply Operand Material
Applies the material of the added operand to the entire compound shape.
Retain Original Material
Keeps the existing material applied to the compound shape.

Display group

Result
Displays the final result of the Boolean operation(s).
Operands
Displays the operands without Boolean operations performed on them. The operands are outlined in a color showing the current Boolean operation being performed on them.
Selected Operands
Displays the selected operands. The operands are outlined in a color showing the current Boolean operation being performed on them.
Ops as Evaluated
Displays the interpolation of operands as evaluated by the Boolean operation(s). When disabled, operands are displayed using their native number of interpolation steps.

Seam Parameters rollout

Seam type
Sets the type of seam to apply to the overlapping sections, either Simple (no seam operation), Fillet or Chamfer. You can select and change seams for multiple operands at once.
Size
Sets the size of the seam. You can select and adjust the size on multiple operands even if their seam types are different.

Procedure

To create a Boolean compound shape:

  1. Create source shapes in the viewports.
  2. Select a base shape.
  3. From the Create panel, click Shapes > Compounds Shapes, then click ShpBoolean in the Object Type rollout. The name of the base shape appears in the Operands list on the Boolean Parameters rollout.
  4. On the Boolean Parameters rollout, click the Add Operands button to select other shapes from the viewport or scene explorer to add to the compound shape. Click the Add Operands button again to end or right-click in the viewport.
  5. On the Operand Parameters rollout, choose the Boolean operation to perform: Union, Intersection, Subtraction, Merge, Attach, or Insert, enabling the Imprint or Cookie options if required.
  6. The operands remain as sub-objects of the Boolean object. Double-click the sub-object to change parameters and use transform tools. By modifying the creation parameters of the Boolean's operand sub-objects, you can change operand geometry in order to change or animate the Boolean result at any time.

Predicting Results

Boolean operations can be tricky to predict. To help, the tables below show the results of various operations performed on two operands. For the purposes of illustration, Operand A has been added first and appears above Operand B in the Operand list.

Union Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A outside B & B outside A, welded A refined at intersections with B A outside B
Closed : Open A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Open : Closed A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Open : Open A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Intersection Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A inside B & B inside A, welded A refined at intersections with B A inside B
Closed : Open B inside A A refined at intersections with B A cut at intersections with B
Open : Closed A inside B A refined at intersections with B A cut at intersections with B
Open : Open (Empty) A refined at intersections with B A cut at intersections with B
Subtraction Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A outside B & B Inside A, welded A refined at intersections with B A outside B
Closed : Open A refined at intersections with B A refined at intersections with B A cut at intersections with B
Open : Closed A outside B A refined at intersections with B A cut at intersections with B
Open : Open Refine A at intersections with B, remove even pieces A refined at intersections with B A cut at intersections with B
Symmetric Difference Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A Subtract B & B Subtract A A refined at intersections with B A outside B
Closed : Open A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Open : Closed A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Open : Open A refined at intersections with B & B refined at intersections with A A refined at intersections with B A cut at intersections with B
Merge Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A cut at intersections with B & B cut at intersections with A A refined at intersections with B A outside B
Closed : Open A cut at intersections with B & B cut at intersections with A A refined at intersections with B A cut at intersections with B
Open : Closed A cut at intersections with B & B cut at intersections with A A refined at intersections with B A cut at intersections with B
Open : Open A cut at intersections with B & B cut at intersections with A A refined at intersections with B A cut at intersections with B
Attach Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A & B A & B A & B
Closed : Open A & B A & B A & B
Open : Closed A & B A & B A & B
Open : Open A & B A & B A & B
Insert Operations
Spline Types, A : B Simple (no option enabled) Imprint Cookie
Closed : Closed A subtract B & B A refined at intersections with B & B A outside B & B
Closed : Open A refined by B & B A refined at intersections with B & B A cut at intersections with B & B
Open : Closed A outside B & B A refined at intersections with B & B A cut at intersections with B & B
Open : Open Refine A at intersections with B, remove even pieces & B A refined at intersections with B & B A cut at intersections with B & B