struct PK_BODY_offset_o_s { int o_t_version; --- version number of option structure PK_LOGICAL_t allow_disjoint; --- whether disjoint body can be --- produced (PK_LOGICAL_false) PK_check_fa_fa_t check_fa_fa; --- check for face-face inconsistencies --- (PK_check_fa_fa_yes_c) int n_offset_faces; --- number of elements in offset_faces --- and offset_values (0) const PK_FACE_t *offset_faces; --- faces to be offset by a different --- value than the function value (NULL) const double *offset_values; --- offset values for corresponding --- faces in offset_faces array (NULL) PK_offset_method_t offset_method; --- offset method --- (PK_offset_method_accurate_c) PK_offset_step_t offset_step; --- whether to create a step offset --- (PK_offset_step_no_c) }; typedef struct PK_BODY_offset_o_s PK_BODY_offset_o_t; This structure contains optional controls for PK_BODY_offset_2 Description of fields: allow_disjoint If this flag is set to PK_LOGICAL_true, and if the resulting body is split by the operation, all the disjoint components of that body will be preserved within a single body. If this flag is set to PK_LOGICAL_false, only one disjoint part of the body will be returned. The default value is PK_LOGICAL_false. check_fa_fa Check for face-face inconsistencies. Permitted values are: PK_check_fa_fa_yes_c PK_check_fa_fa_no_c The default value is PK_check_fa_fa_yes_c. n_offset_faces Length of offset_faces and offset_values arrays. The default value is 0. offset_faces The array of faces which are to be offset by a value different to that specified via the function arguments. Every face in this array must be matched with a corresponding value in the offset_value array. The default value is NULL. offset_values The array of specific face offset values. Every value in this array is associated with the corresponding face in the offset_faces array. The same rules apply to these offset values as the offset parameter specified in the function argument list. A zero value is allowed. The default value is NULL. offset_method The method used for offsetting surfaces in the body. The default value is PK_offset_method_accurate_c. offset_step A "boundary edge" is an edge between a face which is being offset and one which is not. If this option is set to PK_offset_step_yes_c then side faces will be created along any smooth boundary edges. Setting this option to PK_offset_step_yes_c has no effect on the result if there are no smooth boundary edges. The default value is PK_offset_step_no_c.