PK_FACE_delete_facesets_o_t   

struct PK_FACE_delete_facesets_o_s
    {
    int            o_t_version;    --- options structure version number
    PK_LOGICAL_t   allow_disjoint; --- allow function to produce disjoint
                                   --- bodies (PK_LOGICAL_false)
    PK_FACE_heal_t heal_action;    --- healing action (PK_FACE_heal_yes_c) [PF]
    int            n_details;      --- number of details (0)
    PK_detail_t   *details;        --- array of details (NULL) [PF]
    double         tolerance;      --- tolerance (1.0e-6)
    PK_local_ops_update_t
                   update;         --- update flag
                                   --- (PK_local_ops_update_default_c)
    };
typedef struct PK_FACE_delete_facesets_o_s PK_FACE_delete_facesets_o_t;


This structure contains options for PK_FACE_delete_facesets

Used in:

PK_FACE_delete_facesets


Its user fields are:

'allow_disjoint'   if set to PK_LOGICAL_true, then when the operation splits
                   the body into two or more components then the function
                   will return a single disjoint body.  If set to
                   PK_LOGICAL_false (the default) then the components are
                   turned into separate bodies.

'heal_action'      If set to PK_FACE_heal_yes_c (the default), then the
                   function will attempt to heal wounds by whatever method it
                   can.  If set to PK_FACE_heal_no_c, then wounds will not be
                   healed and each faceset will be replaced by a single rubber
                   face.  If set to any other value then an error is returned.
                   For facet geometry, 'heal_action' must be set to
                   PK_FACE_heal_no_c unless faceset 'details' are provided.

'n_details'        number of details in the following array.  Setting this to
                   zero is equivalent to giving an array of length one
                   containing PK_detail_any_c.  Otherwise the array 'details'
                   is an array parallel to the 'facesets' given to
                   PK_FACE_delete_facesets and indicates the detail type of
                   each faceset.  If 'n_details' is less than 'n_facesets'
                   then the final element of 'details' is repeated for the
                   remaining facesets

'details'          An array of details giving the detail type for each
                   faceset which may be used to select appropriate healing
                   methods. For facet geometry, healing a wound will only
                   be attempted if the detail type of the faceset is
                   PK_detail_blend_rb_const_r_c.

'tolerance'        tolerance for healing

'update'           The default value allows applications to take
                   advantage of the latest enhancements of the generic
                   algorithms supporting Parasolid local operations
                   functions. To maintain consistency when rebuilding
                   models created in a previous version of Parasolid,
                   a non-default value should be specified.

                   The default value is PK_local_ops_update_default_c


See Options when deleting facesets for more information.

NOTE:

  Splitting a body into disjoint components is only possible when wounds
  are healed. If 'heal_action' is set to PK_FACE_heal_no_c and deletion of a
  faceset would cause a shell to be split into two or more shells, then
  PK_FACE_delete_facesets will return the error PK_ERROR_not_connected,
  because if shells have rubber faces it is not possible to distinguish
  between the cases where two shells bound separate volumes and when one
  shell bounds a void inside the other.