|
OCCT-Light 0.1
C ABI and C++ veneer for multi-language CAD workflows
|
#include <occtl_topo_build.h>

Public Attributes | |
| uint32_t | struct_version |
| const void * | p_next |
| occtl_node_id_t | root |
| uint64_t | kind_mask |
| int32_t | include_root |
| const char * | name |
| size_t | name_len |
| int32_t | use_color |
| occtl_color_rgba_t | color |
| float | color_tolerance |
| int32_t | use_bbox |
| occtl_select_bbox_t | bbox |
| occtl_select_bbox_mode_t | bbox_mode |
| int32_t | use_curve_kind |
| occtl_curve_kind_t | curve_kind |
| int32_t | use_surface_kind |
| occtl_surface_kind_t | surface_kind |
| int32_t | use_axis_position |
| occtl_select_axis_t | axis |
| occtl_select_axis_position_t | axis_position |
| double | axis_tolerance |
| int32_t | use_normal |
| occtl_direction3_t | normal |
| occtl_select_normal_mode_t | normal_mode |
| double | normal_angle_tolerance |
| int32_t | use_measure |
| occtl_select_measure_kind_t | measure_kind |
| double | measure_min |
| double | measure_max |
| occtl_select_sort_key_t | sort_key |
| occtl_select_sort_direction_t | sort_direction |
| occtl_select_axis_t | sort_axis |
| occtl_select_measure_kind_t | sort_measure_kind |
| occtl_point3_t | sort_point |
Selection options for occtl_select_iter_create.
kind_mask uses (1ull << OCCTL_KIND_*) bits. A zero mask means all node kinds. When root is invalid, selection scans the whole graph; otherwise it walks descendants from root. Set include_root to 1 to test root itself before its descendants.
Metadata filters are supplied through occtl_select_metadata_filter_t chained from p_next.
| occtl_select_axis_t occtl_select_options::axis |
Principal axis for use_axis_position.
| occtl_select_axis_position_t occtl_select_options::axis_position |
Axis-position predicate.
| double occtl_select_options::axis_tolerance |
Absolute coordinate tolerance for axis-position matching.
| occtl_select_bbox_t occtl_select_options::bbox |
Bounding box filter when use_bbox != 0.
| occtl_select_bbox_mode_t occtl_select_options::bbox_mode |
Bounding-box predicate.
| occtl_color_rgba_t occtl_select_options::color |
Colour filter when use_color != 0.
| float occtl_select_options::color_tolerance |
Per-channel absolute tolerance.
| occtl_curve_kind_t occtl_select_options::curve_kind |
Curve kind filter when use_curve_kind != 0.
| int32_t occtl_select_options::include_root |
0/1; only used when root is valid.
| uint64_t occtl_select_options::kind_mask |
Bit mask of occtl_node_kind_t values; 0 means all.
| occtl_select_measure_kind_t occtl_select_options::measure_kind |
Measure predicate kind.
| double occtl_select_options::measure_max |
Inclusive maximum measure value.
| double occtl_select_options::measure_min |
Inclusive minimum measure value.
| const char* occtl_select_options::name |
Optional exact UTF-8 name filter.
| size_t occtl_select_options::name_len |
Length of name in bytes.
| occtl_direction3_t occtl_select_options::normal |
Normal direction filter when use_normal != 0.
| double occtl_select_options::normal_angle_tolerance |
Angular tolerance in radians.
| occtl_select_normal_mode_t occtl_select_options::normal_mode |
Normal predicate.
| const void* occtl_select_options::p_next |
Optional occtl_select_metadata_filter_t chain.
| occtl_node_id_t occtl_select_options::root |
Root node, or OCCTL_NODE_ID_INVALID for whole graph.
| occtl_select_axis_t occtl_select_options::sort_axis |
Axis for OCCTL_SELECT_SORT_AXIS_COORDINATE.
| occtl_select_sort_direction_t occtl_select_options::sort_direction |
Output sort direction.
| occtl_select_sort_key_t occtl_select_options::sort_key |
Output sort key; NONE preserves traversal order.
| occtl_select_measure_kind_t occtl_select_options::sort_measure_kind |
Measure for OCCTL_SELECT_SORT_MEASURE.
| occtl_point3_t occtl_select_options::sort_point |
Point for OCCTL_SELECT_SORT_DISTANCE_TO_POINT.
| uint32_t occtl_select_options::struct_version |
Must be OCCTL_SELECT_OPTIONS_VERSION_1.
| occtl_surface_kind_t occtl_select_options::surface_kind |
Surface kind filter when use_surface_kind != 0.
| int32_t occtl_select_options::use_axis_position |
0/1; filter by bbox-centre position along axis.
| int32_t occtl_select_options::use_bbox |
0/1; match by computed node AABB.
| int32_t occtl_select_options::use_color |
0/1; match nodes with an explicit colour.
| int32_t occtl_select_options::use_curve_kind |
0/1; match Edge nodes by 3D curve kind.
| int32_t occtl_select_options::use_measure |
0/1; match by OCCT mass property.
| int32_t occtl_select_options::use_normal |
0/1; match Face nodes by midpoint surface normal.
| int32_t occtl_select_options::use_surface_kind |
0/1; match Face nodes by surface kind.