Surface Booleans

A script to demonstrate Boolean operations between two closed volumes. Procedures are implemented to ensure resulting meshes are watertight.

Al momento, stai seguendo questo contributo

The main script titled "surface_booleans_script.m" contains the body of this submission.
Firstly, a cube and sphere are generated using a convex hull algortihm.
Afterwards the intersections of both shapes is performed using Jaroslaw Tuszynski SurfaceIntersection function (triangle-triangle intersection algorithm).
The intersecting edges are organized into open and closed loops ( form_intersection_loops_boolean() ).
These closed loops are used as a seed for a flood fill algortihm for organizing each face into a corresponding closed volume.
A boolean matrix is tabulated to determine which volume is associated with a Union, Subtraction or Intersection operation.
There are issues with co-planar triangles and floating point imprecision. However, there are checks in the main script that will alert the user if the surface boolean is acheivable or not.
For a better implementation of surface booleans I would actually recommend using the ISO2MESH package. The advantage of this code however is that it is purely coded inside of MATLAB.

Cita come

Eric Trudel (2026). Surface Booleans (https://it.mathworks.com/matlabcentral/fileexchange/122502-surface-booleans), MATLAB Central File Exchange. Recuperato .

Riconoscimenti

Ispirato da: Surface Intersection

Informazioni generali

Compatibilità della release di MATLAB

  • Compatibile con R2020b e release successive

Compatibilità della piattaforma

  • Windows
  • macOS
  • Linux
Versione Pubblicato Note della release Action
1.0.0