OCCT-Light 0.1
C ABI and C++ veneer for multi-language CAD workflows
Loading...
Searching...
No Matches
occtl_mesh_options Struct Reference

#include <occtl_mesh.h>

Collaboration diagram for occtl_mesh_options:

Public Attributes

uint32_t struct_version
 
const void * p_next
 
double deflection
 
double angle
 
double deflection_interior
 
double angle_interior
 
double min_size
 
int32_t in_parallel
 
int32_t relative
 
int32_t internal_vertices_mode
 
int32_t control_surface_deflection
 
int32_t control_surface_deflection_all
 
int32_t clean_model
 
int32_t adjust_min_size
 
int32_t force_face_deflection
 
int32_t allow_quality_decrease
 
int32_t use_bbox
 
occtl_aabb3_t bbox
 
double deviation_coefficient
 
double deviation_angle
 

Detailed Description

Tunable parameters for occtl_mesh_generate.

Two parameter sources are supported, selected by the use_bbox field: explicit deflection / angle controls, or bbox-derived where the linear deflection is recomputed from a caller-supplied bounding box and a relative coefficient.

Defaults (see OCCTL_MESH_OPTIONS_INIT and occtl_mesh_options_init) are the conservative ones: linear deflection 0.001, angular deflection 0.5 rad, interior fields = -1.0 (inherit from boundary), single threaded, control-surface deflection on, model cleanup on.

Cancellation and algorithm selection.
Cooperative cancellation and a tessellation-algorithm enum will be added behind p_next when a binding asks for them; this v1 surface is locked to the default algorithm and runs to completion.

Member Data Documentation

◆ adjust_min_size

int32_t occtl_mesh_options::adjust_min_size

0/1; non-zero adjusts minimum size per edge. Default 0.

◆ allow_quality_decrease

int32_t occtl_mesh_options::allow_quality_decrease

0/1; non-zero permits the algorithm to coarsen an existing mesh. Default 0.

◆ angle

double occtl_mesh_options::angle

Boundary angular deflection (rad). Default 0.5.

◆ angle_interior

double occtl_mesh_options::angle_interior

Interior angular deflection (rad); -1.0 to inherit boundary. Default -1.0.

◆ bbox

occtl_aabb3_t occtl_mesh_options::bbox

Bounding box used iff use_bbox != 0.

◆ clean_model

int32_t occtl_mesh_options::clean_model

0/1; non-zero discards stale intermediate mesh data after the run. Default 1.

◆ control_surface_deflection

int32_t occtl_mesh_options::control_surface_deflection

0/1; non-zero verifies surface deviation. Default 1.

◆ control_surface_deflection_all

int32_t occtl_mesh_options::control_surface_deflection_all

0/1; if non-zero applies the surface-deflection check to all surface kinds. Default 0.

◆ deflection

double occtl_mesh_options::deflection

Boundary linear deflection. Default 0.001.

◆ deflection_interior

double occtl_mesh_options::deflection_interior

Interior linear deflection; -1.0 to inherit boundary. Default -1.0.

◆ deviation_angle

double occtl_mesh_options::deviation_angle

Angular deflection (rad) for bbox mode. Default 20°.

◆ deviation_coefficient

double occtl_mesh_options::deviation_coefficient

Relative deflection multiplier for bbox mode. Default 0.001.

◆ force_face_deflection

int32_t occtl_mesh_options::force_face_deflection

0/1; non-zero overrides face tolerance with the supplied deflection. Default 0.

◆ in_parallel

int32_t occtl_mesh_options::in_parallel

0/1; non-zero enables parallel face meshing. Default 0.

◆ internal_vertices_mode

int32_t occtl_mesh_options::internal_vertices_mode

0/1; non-zero adds interior vertices to the surface mesh. Default 1.

◆ min_size

double occtl_mesh_options::min_size

Minimum triangle edge length; -1.0 to compute from deflection. Default -1.0.

◆ p_next

const void* occtl_mesh_options::p_next

Reserved for extensions; must be NULL.

◆ relative

int32_t occtl_mesh_options::relative

0/1; non-zero treats deflection as relative to edge size. Default 0.

◆ struct_version

uint32_t occtl_mesh_options::struct_version

◆ use_bbox

int32_t occtl_mesh_options::use_bbox

0/1; when non-zero the algorithm derives deflection from the bbox / deviation_coefficient pair instead of using the explicit deflection field. Default 0.


The documentation for this struct was generated from the following file: