Bodies - Boolean
Time to read: ~3 min
The Boolean tool generates new surfaces that represent one of the three Boolean cases: unite, subtract or intersect.
What is important to consider is that the Boolean operation does not operate on the original data directly but rather on a surface-function that considers where data intersects or overlaps.
Method: Boolean
The general approach works on one of three methods:
- Unite
- This joins two or more (target) bodies. The resultant data will consist of the volume shared by all selected bodies
- Subtract
- This removes one or more tool bodies from one target body. The result will be a volume that is defined by the original body minus any tool bodies
- Intersect
- An intersection is the volume that is shared by all target bodies. Note that if one body intersects with multiple other bodies in discrete locations, the result
will be an empty volume as the result is the volume where all targets overlap.
For the example below, the three methods are shown:
The result of a Boolean Unite operation is shown below. For this example, the Settings>Application Settings>Booleans:BooleanCellCount
value has been reduced to 32 in order to better illustrate some shortcomings of this approach:
Other applications can sometimes perform better Boolean operations as the implementation here currently does not attempt to resolve the original surface representation
from the Boolean operation. Instead, the solution is a (Marching Cube) sampled mesh generated using the method defined and as such can lose detail.
In terms of the resolution used to obtain the resultant surface mesh, the number of cells being used in the remeshing process is defined by a value in the
Application Settings> Booleans: BooleanCellCount. By default, this value is set to 200 but the user can choose a different value. Note that larger values may overwhelm the application
and could cause the application to become unstable. Internally, the application prevents values larger than 1024 (or smaller than 10) though this limit may still be too high for some hardware systems.
Selection: Target
Each operation requires one or more bodies to operate on. By default, the Target button will be depressed, allowing selection of the body or bodies from the viewer on
which the operation is to be performed. For a Unite or Intersect operation, only target bodies are required.
Individual selections will display in the viewer using the default (red) highlight. Un-highlighting is achieved by Control+Clicking the body. Alternatively, all selections
can be cleared using the button next to the selection button.
Selection: Tool
For the Subtract method, additionally a tool or set of tools are required. These represent the data that is being removed from the single target body. Selection options
are the same as for the Target.
Option: All, Selected, Preview, Clear & Apply
Identical to the other Bodies tools, the possibility exists to apply the tool to All currently loaded data or only those selected (if there are
multiple bodies). The Preview button will show the result (only for the selected bodies) before making changes. Clearing the preview resets the
display and the Apply option makes the changes permanent.