How to make a hole in a 3D object in Rhino?
Short Answer
Yes — in Rhino 3D, the most common professional way to make a hole in a 3D object is with BooleanDifference. Create a cutting solid such as a cylinder, position it through the object, then subtract it from the target solid. This works best on closed solids; open polysurfaces can fail.
What You Need to Know Before
Warning: BooleanDifference often fails when either object is not a closed solid or when the cutter only touches the surface without fully passing through it. Tiny gaps, bad joins, or locked objects are common hidden causes.
How to Make a Hole in a 3D Object in Rhino
Command: BooleanDifference
Shortcut: No default shortcut
Quick Steps:
- Create a cutter shape, usually with Cylinder from the Solid menu or command line, and place it so it fully passes through the 3D object.
- Run BooleanDifference, then select the object to subtract from and press Enter.
- Select the cylinder as the object to subtract with, press Enter, and keep DeleteInput=Yes if you want the cutter removed automatically.
Variables & Settings
Key Setting: DeleteInput
This command-line option controls whether the cutting object remains after the subtraction. Professionals usually keep it set to Yes for a clean workflow, but set it to No if you may need to reuse the cutter for more holes.
Why it Fails
- Cause 1 (Geometry): The object or cutter is an open polysurface, naked edge object, or invalid solid, so Rhino cannot calculate a proper boolean result.
- Cause 2 (layers/Locks): The cutter or target object is on a locked layer, or object selection is restricted by layer state.
- Cause 3 (Command/Logic): The cutter does not fully intersect the object, or it is only tangent to the surface, so no removable volume is created.
Quick Fix & Best Practice
- Quick Fix: Run ShowEdges to find naked edges, repair the solid if needed, and make sure the cylinder fully extends through the object before using BooleanDifference again.
- Manager’s Verdict: Use BooleanDifference first because it is the fastest and standard Rhino workflow for holes in solid models. Avoid it for messy imported geometry; in those cases, rebuild or join the solids before subtracting.
FAQ
Can I make a hole in a surface instead of a solid?
Yes, but you usually need Trim or Split instead of BooleanDifference.
What shape should I use for a round hole?
A Cylinder is the standard cutter for a circular hole.
Why does BooleanDifference do nothing?
Usually because the cutter does not fully intersect a closed solid.
.
