Parameters structure for uniteManyMeshes function. More...
#include <MRUniteManyMeshes.h>
Public Attributes | |
bool | useRandomShifts { false } |
Apply random shift to each mesh, to prevent degenerations on coincident surfaces. | |
bool | fixDegenerations { false } |
float | maxAllowedError { 1e-5f } |
unsigned int | randomShiftsSeed { 0 } |
Seed that is used for random shifts. | |
FaceBitSet * | newFaces { nullptr } |
If set, the bitset will store new faces created by boolean operations. | |
NestedComponenetsMode | nestedComponentsMode { NestedComponenetsMode::Remove } |
bool | mergeOnFail { false } |
If set - merges meshes instead of booleaning it if boolean operation fails. | |
bool | forceCut = false |
ProgressCallback | progressCb |
Parameters structure for uniteManyMeshes function.
bool MR::UniteManyMeshesParams::fixDegenerations { false } |
Try fix degenerations after each boolean step, to prevent boolean failure due to high amount of degenerated faces useful on meshes with many coincident surfaces (useRandomShifts used for same issue)
bool MR::UniteManyMeshesParams::forceCut = false |
If this option is enabled boolean will try to cut meshes even if there are self-intersections in intersecting area it might work in some cases, but in general it might prevent fast error report and lead to other errors along the way
float MR::UniteManyMeshesParams::maxAllowedError { 1e-5f } |
Max allowed random shifts in each direction, and max allowed deviation after degeneration fixing not used if both flags (useRandomShifts,fixDegenerations) are false
bool MR::UniteManyMeshesParams::mergeOnFail { false } |
If set - merges meshes instead of booleaning it if boolean operation fails.
NestedComponenetsMode MR::UniteManyMeshesParams::nestedComponentsMode { NestedComponenetsMode::Remove } |
By default function separate nested meshes and remove them, just like union operation should do read comment of NestedComponenetsMode enum for more information
FaceBitSet* MR::UniteManyMeshesParams::newFaces { nullptr } |
If set, the bitset will store new faces created by boolean operations.
ProgressCallback MR::UniteManyMeshesParams::progressCb |
unsigned int MR::UniteManyMeshesParams::randomShiftsSeed { 0 } |
Seed that is used for random shifts.
bool MR::UniteManyMeshesParams::useRandomShifts { false } |
Apply random shift to each mesh, to prevent degenerations on coincident surfaces.