Latest news
TutorialsRhino

Rhino 8 Boolean Commands: A Guide to Union, Difference, and Intersection

In Rhino 8, Boolean commands are used to union, subtract, intersect, or split surface and polysurface geometry. This guide explains how to choose the right command and troubleshoot common issues.

White architectural massing model illustrating union and subtraction operationsAI image
Representative image, generated with AI.Image: 3dsınıfı / FCA AI

In brief

  1. BooleanUnion trims the shared areas of selected objects and creates a single polysurface from the remaining parts.
  2. With BooleanDifference, first select the objects to subtract from, then select the cutting objects.
  3. Reversed results can be caused by normals; use Dir to inspect their direction and Flip to change it.
  4. For failed Boolean operations, Rhino may place text dots identifying problem areas.

What will you learn in this guide?

Boolean commands in Rhino speed up modeling by determining which parts of intersecting geometry to keep. But not every operation serves the same purpose: different commands are used to combine objects into a single polysurface, subtract one part from another, keep only the shared area, or split geometry into separate parts.

This guide covers how the BooleanUnion, BooleanDifference, BooleanIntersection, and BooleanSplit commands described in the Rhino 8 documentation work. It also looks at Boolean2Objects, which lets you cycle through possible results between two objects; Planar Boolean options for planar surfaces; and geometry issues to check when operations fail.

Requirements

  • Software and version: The command documentation referenced here is for Rhino 8. It does not specify a particular update number or additional software requirements.

  • Geometry: Boolean commands can be used with surfaces and polysurfaces. Similar steps apply to mesh objects; the result is a mesh regardless of the input type.

  • Account or license: The source documentation does not specify any additional account or license requirements for these operations.

Before you begin, decide which parts you want to keep. This is especially important with BooleanDifference: the first selection determines the objects to subtract from, and the second selects the cutting objects. Reversing the selection order can produce the opposite of the expected result.

Boolean operations, step by step

1. Combine objects: BooleanUnion

BooleanUnion cleans up the shared areas of multiple objects and creates a single polysurface from the remaining parts.

  1. Select the surfaces or polysurfaces you want to combine.

  2. Run the command and press Enter.

  3. The objects are combined into a single polysurface.

The DeleteInput option controls whether the input objects are deleted. DeleteInput=No supports History recording. If you want adjacent, coplanar surfaces to be merged into a single surface after the union, use the MergeCoplanarFaces option.

2. Subtract one object from another: BooleanDifference

BooleanDifference is used to create a void or recess in a solid, for example. The operation has two selection stages:

  1. Select the surfaces or polysurfaces to subtract from, then press Enter.

  2. Select the surfaces or polysurfaces to use as cutters, then press Enter.

DeleteInput determines whether the original geometry is deleted. When DeleteInput=Yes, the DeleteCutters option controls whether the cutter object is also deleted. The source documentation also notes that, using Rhino’s surface-modeling approach, it is not possible to create a hollow, wall-thickness solid like a tennis ball by using an inner sphere. So do not assume that simply placing a cutter object inside will produce the expected result.

3. Keep the shared area: BooleanIntersection

BooleanIntersection trims the non-overlapping areas of objects and keeps the intersecting portion.

  1. Select the first group of objects, or the intersecting objects, then press Enter.

  2. If you selected just one group in the first step, select the second group and press Enter.

  3. The shared area remains as the resulting geometry.

The DeleteInput option determines whether the source geometry is kept. Because the selection order determines which object groups are used in the intersection calculation, it helps to review the groups before running the command.

4. Create separate parts: BooleanSplit

BooleanSplit separates the shared areas, creating separate polysurfaces from the overlapping and non-overlapping parts.

  1. Select the first group of objects to split and press Enter.

  2. Select the cutting objects and press Enter again.

  3. The cutting objects can be the same objects as those being split.

The DeleteInput option controls whether the original geometry is deleted or kept. This command is useful when you need to edit the different parts separately after a Boolean operation.

5. Choose a result between two objects: Boolean2Objects

Boolean2Objects lets you choose between possible Boolean results for two objects. After selecting the two objects, click in the viewport to cycle through the results. The options listed in the source documentation are union, subtract A from B, subtract B from A, intersection, and reverse intersection. You can cycle through the options until the desired geometry appears. This command also has a DeleteInput option.

If you are working with planar surfaces, PlanarUnion, PlanarDifference, and PlanarIntersection are available as separate options. These respectively union overlapping planar surfaces, perform a subtraction, or create a surface from the intersection. The resulting surface inherits the properties of the first surface selected.

Common issues and how to fix them

If a Boolean operation produces an unexpected result, one of the first things to check is the surface normals. Operations use normals to determine which areas to keep. With an open object, the inside and outside may not be obvious. Use Dir to inspect the normal direction; if it is not what you expect, reverse it with Flip and try the operation again. Once the geometry is fully closed, Rhino can determine inside from outside; surface directions are then set to point outward from the model.

When an operation fails, Rhino may place text dots indicating areas with naked edges or problematic intersections. Finding these dots and checking the Secondary text section in their properties can provide more detailed information about the error.

Other possible causes include:

  • Coincident control points: Control points on a surface edge that occupy the same location can disrupt the operation, especially if singular points lie in the intersection area.

  • Overlapping surface areas: Two objects sharing the same surface area can prevent BooleanDifference or BooleanIntersection from working. With boxes that meet along a face, for example, a union may work while subtraction and intersection fail.

  • Non-manifold edges: More than two faces attached to an edge can cause problems with a polysurface or mesh.

  • Insufficient surface preparation: For surfaces, it is recommended that you try the Join command before running a Boolean operation.

If the Boolean operation still fails, it may be possible to split the geometry another way: use Explode to separate the polysurface into individual surfaces if needed, create intersection curves with Intersect, then use those curves with Trim or Split and join the parts back together with Join.

Impact on architectural and visualization workflows

Boolean commands are direct modeling tools for architects, interior designers, and 3D artists who need to create openings in massing models, combine surfaces, or separate intersecting parts. Choosing the right command can reduce the need for manual corrections afterward. However, the result depends on whether the geometry is closed, the direction of its normals, and the nature of the intersections.

If you need to preserve the input geometry in production files, check the DeleteInput options; for some Boolean commands, DeleteInput=No supports History recording. The source does not provide information about hardware requirements or compatibility with other software, so no specific assumptions should be made about these. When working with meshes in particular, bear in mind that the result will be a mesh, and that planar Boolean results inherit the properties of the first surface selected.

Next steps

Start by testing each command separately on simple, closed geometry, deciding for each test which parts you expect to keep. If the result is reversed, check the normals; if the command fails, inspect the text dots and intersection area. For problematic intersections, consider a manual approach using Intersect, Trim, or Split, then join the parts with Join.

Source and license

This guide is adapted from McNeel’s Rhino 8 documentation on Boolean commands and troubleshooting Boolean operations. The source is provided under a free license; the material has been translated into Turkish and reworked.

Sources

2 sources
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/booleansplit.htm
Summary
D
docs.mcneel.comdocs.mcneel.com/rhino/8/help/en-us/commands/booleanunion.htm
Summary

Source texts are not republished; short quotes are marked, everything else is our own summary and commentary.

3dsınıfı’s take
3dEditor’s assessment

Rhino’s Boolean tools directly address a common task in architectural massing and detail modeling: cleanly combining or separating intersecting geometry. For offices and students in Turkey, the main benefit comes not from memorizing command names but from understanding the selection order and geometry preparation. This can reduce repeated correction attempts.

Still, it is unwise to expect automatic results with every model: open surfaces, normal directions, and problematic intersections can all affect the operation. Since this source provides no information about licensing or hardware costs, further verification is needed before making a purchase decision. Mesh output and options for preserving input geometry should also be checked in advance against the existing workflow.

Frequently asked questions

How do you use BooleanDifference in Rhino?

First select the surfaces or polysurfaces to subtract from and press Enter. Then select the cutter objects to complete the operation.

Why does a Rhino Boolean operation fail?

Unexpected normal directions, coincident control points, overlapping surface areas, or non-manifold edges can cause problems. Text dots placed by Rhino can help you inspect the problem area.

Do Rhino Boolean commands work on mesh objects?

According to the source, similar steps apply to mesh objects. The command result will be a mesh regardless of the input object type.

Comments and the forum are in Turkish.Join the discussion
+

Related news