This call can be used to optimize Boundary Representation geometries
consistencyCheck
bit0 (1) merge elements in the vertex array are duplicated (epsilon used as distance)
bit1 (2) remove elements in the vertex array that are not referenced by elements in the index array (interpreted as SET if flags are defined)
bit2 (4) merge polygons placed in the same plane and sharing at least one edge
bit3 (8) merge polygons advanced (check of polygons have the opposite direction and are overlapping, but don't share points)
bit4 (16) check if faces are wrongly turned opposite from each other
bit5 (32) check if faces are inside-out
bit6 (64) check if faces result in solid, if not generate both sided faces
bit7 (128) invert direction of the faces / normal's
bit8 (256) export all faces as one conceptual face
bit9 (512) remove irrelevant intermediate points on lines
bit10 (1024) check and repair faces that are not defined in a perfect plane
fraction
To compare adjacent faces, they will be defined as being part of the same conceptual face if the fraction
value is larger then the dot product of the normal vector's of the individual faces.
epsilon
This value is used to compare vertex elements, if vertex elements should be merged and the distance is smaller than this epsilon value
then it will be defined as equal
maxVerticesSize
if 0 this setting is applied to BoundaryRepresentation based geometries
if larger than 0 it is applied to all BoundaryRepresentation based geometries with vertices size smaller or equal to the given number
Syntax
//
// Strong typing definition
//
void setBRepProperties(
SdaiModel model,
int64_t consistencyCheck,
double fraction,
double epsilon,
int_t maxVerticesSize
);
//
// Weak typing definition
//
void __declspec(dllexport) __stdcall setBRepProperties(
int_t model,
int64_t consistencyCheck,
double fraction,
double epsilon,
int_t maxVerticesSize
);
Property model
Size: 64 bit / 8 byte (value)
The handle to the model. The model handle is static during its existance. Several models can be opened simultaniously within one session. Different models are always independent, threads are allowed to be running on different models simultaniously.
Property consistencyCheck
Size: 64 bit / 8 byte (value)
...
Property fraction
Size: 64 bit / 8 byte (value)
...
Property epsilon
Size: 64 bit / 8 byte (value)
...
Property maxVerticesSize
Size: 64 bit / 8 byte (value)
...