1. Self intersection Fixing
To fix the self-intersection issues we used the autoRefineTriangleSoup
function from CGAL. After modifying the mesh we obtain the following result from the different cubes we showed in the Context.
Here’s the outcome after the autorefine and pre-processing :
Next Performance
Same result as the beginning. |
Ksr did not worked with default parameters,the result seems a lot like the 2 cube at each intersection |
Ksr worked with default parameters, issue at the major intersection between 2 cubes out of three, a empty space was create at the intersection |
Ksr workd with default parameters, issue at one of the major intersection with an empty space create between. |
The autorefine allows us to use the meshes in the algorithm but at the cost of some issue at the generated mesh with some spaces and faces being erased but the mesh remains closed and watertight and keeping the global shape of the input. We also applied autorefine to other meshes like Three Zones or ACJasmin:
Here is a comparison between the refined and non-refined versions of the Three Zones mesh:
default parameters |
KSR execution time : 7s , total time : 24s |
KSR execution time 53s , total time : 66s |
parameters: min.region.size = 200 ,maximum distance=0.06 |
KSR execution time = 4s,total time = 23 |
KSR execution time = 3s,total time = 19 |
For the Three Zones mesh, refinement seems to improve the result. As the default parameters is really faster and closer to a closed mesh, only one wall is missing and on other hand with low parameters we have a more detailled mesh than the normal version but it a bit slower.
ACjasmin msh version comparaison :
default parameters |
KSR execution time :403s ,total execution time : 453s |
KSR execution time : 422s ,total execution time : 463s |
parameters : min.region.size = 2000 |
KSR execution time : 37s ,total time = 75s |
KSR execution time : 30s , total time : 68 |
parameters : min.region.size = 2000, maximum.distance=0.04 |
KSR execution time : 39s ,total time = 76s |
KSR execution time : 32s , total time : 60 |
For the ACjasmin mesh, refinement initially improved execution time with default parameters but introduced a hole in the roof. With the default maximum distance, the issue worsened, creating a larger hole in the structure. However, with appropriately chosen parameters, the refined result can match the outcome without refinement.
Based on these observations, it would be beneficial to have the option to toggle auto-refine on and off. This approach allows for more flexibility in handling different mesh complexities and requirements.
Another issue encountered with refinement is an execution problem during isotropic remeshing who can last very long or not end at all.
Next Performance