setBRepProperties

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 / normals 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 adjecent 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: 32 bit / 4 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: 32 bit / 4 byte (value)
...