Skip to main content

Voxel Boolean

The Voxel Boolean tool performs Boolean operations using a voxel-based approach, providing a robust alternative to geometric Boolean operations. This method converts surfaces to a voxel representation, performs the Boolean operation in voxel space, and converts the result back to a surface mesh.

Medical Disclaimer

This tool is provided for research and educational purposes only. Any clinical or diagnostic use requires proper validation in accordance with applicable regulations.

Overview

Voxel Boolean operations work differently from geometric Boolean operations:

  1. Voxelization: Input surfaces are converted to 3D voxel grids (binary images)
  2. Boolean operation: The operation is performed on voxel data (simple logical operations)
  3. Surface extraction: The result is converted back to a triangulated surface

This approach is more robust than geometric Boolean because it doesn't depend on precise mesh topology—it works even with meshes that have holes, self-intersections, or other quality issues that would cause geometric Boolean to fail.

Interface

Boolean Operation

The standard Boolean operations are available:

OperationDescription
UnionCombine volumes (A + B)
IntersectionKeep overlapping volume (A ∩ B)
DifferenceSubtract B from A (A - B)

Voxel Conversion Method

Select the voxelization algorithm:

MethodDescription
AccurateHigh-accuracy voxelization producing smooth, detailed surfaces
FastEfficient voxelization with reduced quality (may produce pixelated artifacts)

Voxel Spacing

Control the resolution of the voxel grid:

ParameterDescriptionDefault
X (mm)Voxel size along the X axis1.0
Y (mm)Voxel size along the Y axis1.0
Z (mm)Voxel size along the Z axis1.0
Uniform spacingLock all axes to the same valueOptional

Smaller spacing values produce higher-resolution results but require more memory and processing time.

Options

OptionDescriptionDefault
SmoothApply smoothing to the resulting surfaceDisabled

Parameters Explained

Voxel Conversion Method

Accurate:

  • Uses a high-quality voxelization algorithm
  • Produces smooth, accurate surfaces
  • Slightly slower processing
  • Recommended for final results

Fast:

  • Uses an optimized but less precise algorithm
  • May produce stair-stepping or pixelation artifacts
  • Faster processing
  • Suitable for previews or when speed is critical

Voxel Spacing

The voxel spacing determines the resolution of the intermediate voxel representation:

SpacingEffectUse Case
Large (2-5 mm)Coarse resolution, fast processing, may lose small featuresQuick previews, large objects
Medium (0.5-1 mm)Balanced resolution and performanceGeneral use
Small (0.1-0.5 mm)High resolution, slow processing, accurate detailsFine features, small objects
Memory Considerations

Smaller voxel spacing dramatically increases memory requirements. A 100mm × 100mm × 100mm object at 0.1mm spacing creates 1 billion voxels. Start with larger spacing and reduce if needed.

Smooth Option

When enabled, the resulting surface undergoes smoothing to reduce stair-stepping artifacts from the voxelization process. This is especially useful when using:

  • The Fast conversion method
  • Larger voxel spacing values

Voxel Boolean vs. Geometric Boolean

AspectVoxel BooleanGeometric Boolean
RobustnessVery high—works with problematic meshesRequires clean, manifold meshes
AccuracyResolution-dependentHigh geometric precision
SpeedConsistent, depends on resolutionFast for simple, slow for complex
MemoryCan be high for fine resolutionGenerally lower
Best forProblematic inputs, complex geometryClean, well-formed inputs

When to use Voxel Boolean:

  • Geometric Boolean fails or produces errors
  • Input meshes have quality issues (holes, self-intersections)
  • Working with complex, organic shapes
  • Speed is less important than reliability

When to use Geometric Boolean:

  • Input meshes are clean and manifold
  • Maximum geometric precision is needed
  • Memory is limited
  • Processing simple geometries

Typical Workflows

Robust Union for Complex Shapes

When geometric Boolean fails:

  1. Open the Voxel Boolean tool
  2. Select Union operation
  3. Select input surfaces
  4. Choose Accurate method
  5. Set appropriate voxel spacing (0.5-1 mm for most cases)
  6. Enable Smooth for cleaner results
  7. Click Apply

Quick Preview Boolean

For fast iteration:

  1. Select Fast method
  2. Use larger spacing (2-3 mm)
  3. Apply the operation
  4. Once satisfied with the result, re-run with Accurate and finer spacing

Handling Problematic Meshes

When input meshes have quality issues:

  1. Try geometric Boolean first
  2. If it fails, switch to Voxel Boolean
  3. Use Accurate method for best results
  4. After the operation, run Diagnostics and Fixes to verify quality

Best Practices

  1. Start with larger spacing: Begin with 1-2 mm spacing to test the operation quickly, then reduce for finer results.

  2. Use Accurate for final output: The Fast method is useful for previews but may produce artifacts in the final result.

  3. Enable Smooth when needed: If the result shows stair-stepping, enable smoothing or use finer spacing.

  4. Consider memory limits: Monitor memory usage when using very fine spacing. Reduce resolution if you encounter memory errors.

  5. Run diagnostics after: Voxel Boolean generally produces manifold results, but verify with Diagnostics and Fixes.

  6. Use geometric Boolean when possible: If your meshes are clean, geometric Boolean is faster and more precise.

Troubleshooting

Out of Memory

If the operation fails due to memory:

  • Increase voxel spacing (reduce resolution)
  • Close other applications to free memory
  • Process smaller regions separately

Stair-Stepping Artifacts

If the result has visible voxel steps:

  • Use finer voxel spacing
  • Enable the Smooth option
  • Use the Accurate conversion method

Missing Features

If small features are lost:

  • Reduce voxel spacing (smaller values = higher resolution)
  • Ensure spacing is smaller than the smallest feature you need to preserve

See Also