PK_BODY_offset_o_t   


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.