Boolean
The Boolean tool executes geometric Boolean operations on surface meshes, computing the union, intersection, or difference between input surfaces. Boolean operations are fundamental for combining, subtracting, or finding common regions between 3D objects.
This tool is provided for research and educational purposes only. Any clinical or diagnostic use requires proper validation in accordance with applicable regulations.
Overview
Boolean operations treat surfaces as solid volumes and compute geometric relationships between them:
| Operation | Result | Formula | Use Case |
|---|---|---|---|
| Union | Combined volume of both inputs | A + B | Merging overlapping structures |
| Intersection | Common volume shared by both inputs | A ∩ B | Finding overlapping regions |
| Difference | Volume of A with B removed | A - B | Subtracting one shape from another |
Unlike the Merge tool which simply concatenates mesh data, Boolean operations compute the actual geometric relationship between the volumes, producing clean, manifold results.
Interface
Boolean Operation
Select the type of operation to perform:
| Operation | Description |
|---|---|
| Union | Combine both inputs into a single volume (A + B) |
| Intersection | Keep only the overlapping region (A ∩ B) |
| Difference | Subtract Input B from Input A (A - B) |
Options
| Option | Description |
|---|---|
| Input A | The first (primary) surface for the operation |
| Input B | The second surface(s) for the operation (can select multiple) |
| Result | Target for the result (new surface or replace existing) |
Boolean Operations Explained
Union (A + B)
Creates a single surface encompassing the combined volume of both inputs. Overlapping regions are merged, and internal geometry is removed.
Example uses:
- Combining adjacent anatomical structures
- Creating a unified mold from multiple parts
- Merging segmented regions that should be treated as one
Intersection (A ∩ B)
Creates a surface containing only the volume that is common to both inputs—the region where they overlap.
Example uses:
- Finding the overlapping region between two structures
- Identifying contact areas between objects
- Creating interference detection results
Difference (A - B)
Creates a surface that is Input A with the volume of Input B removed. The result is the portion of A that does not overlap with B.
Example uses:
- Creating holes or cavities
- Subtracting one structure from another
- Carving out material for implant fitting
For the Difference operation, the order of inputs matters. A - B produces a different result than B - A. Make sure you select the correct surface as Input A (the one you want to keep).
Actions
| Button | Description |
|---|---|
| Apply | Execute the Boolean operation |
Requirements
For successful Boolean operations, input surfaces should be:
- Closed (watertight): No holes or open boundaries
- Manifold: Each edge shared by exactly two triangles
- Non-self-intersecting: No faces intersecting themselves
Use Diagnostics and Fixes to verify and repair surfaces before performing Boolean operations.
Typical Workflows
Combining Two Structures
To merge two overlapping surfaces into one:
- Open the Boolean tool
- Select Union operation
- Choose the first surface as Input A
- Choose the second surface as Input B
- Click Apply
Creating a Hole/Cavity
To subtract one shape from another:
- Position the "tool" surface (the shape to subtract) where you want the hole
- Open the Boolean tool
- Select Difference operation
- Choose the main object as Input A
- Choose the tool shape as Input B
- Click Apply
Finding Overlapping Volume
To identify where two surfaces overlap:
- Open the Boolean tool
- Select Intersection operation
- Choose both surfaces as Input A and Input B
- Click Apply
The result contains only the shared volume.
Complex Boolean Chains
For complex operations involving multiple surfaces:
- Perform operations pairwise
- Use the result of one operation as input to the next
- Build up the final geometry incrementally
Boolean vs. Voxel Boolean
| Aspect | Boolean | Voxel Boolean |
|---|---|---|
| Algorithm | Geometric mesh operations | Voxel-based conversion and operations |
| Input requirements | Clean, manifold meshes | More tolerant of mesh issues |
| Precision | High geometric precision | Resolution-dependent |
| Speed | Fast for simple cases, slow for complex | Consistent performance |
| Best for | Clean, well-formed inputs | Problematic or complex inputs |
If the standard Boolean operation fails due to mesh quality issues, try Voxel Boolean as an alternative.
Troubleshooting
Boolean Operation Fails
If the operation doesn't produce expected results:
- Check mesh quality: Use Diagnostics and Fixes to verify both inputs are closed and manifold
- Fill holes: Use Fill Holes to close any open boundaries
- Try Voxel Boolean: For problematic meshes, Voxel Boolean may succeed where geometric Boolean fails
- Simplify inputs: Complex geometry may cause issues—try Reduce to simplify first
Unexpected Results
If the result doesn't look right:
- Verify input selection: Ensure you selected the correct surfaces for A and B
- Check operation type: Confirm you chose the right operation (union vs. intersection vs. difference)
- Review normals: Inverted normals can cause incorrect results—use Diagnostics and Fixes to check
- Examine overlapping regions: Boolean operations require actual geometric overlap; touching or nearby surfaces may not produce expected results
Best Practices
-
Prepare inputs: Run Diagnostics and Fixes on both surfaces before Boolean operations.
-
Save before operating: Boolean operations modify geometry significantly. Save your work or duplicate surfaces before proceeding.
-
Start simple: Test operations on simple geometries first to understand the behavior.
-
Use appropriate tool: For non-overlapping surfaces that just need combining, use Merge instead—it's faster and simpler.
-
Verify results: After Boolean operations, run diagnostics to verify the result is manifold.
See Also
- Voxel Boolean - Alternative Boolean using voxel-based methods
- Merge - Combine surfaces without geometric computation
- Diagnostics and Fixes - Prepare and verify surfaces
- Fill Holes - Close open boundaries before Boolean operations