PK_FACE_delete_facesets   


PK_ERROR_code_t                    PK_FACE_delete_facesets
(
--- received arguments ---
int                                n_facesets,  --- number of facesets
PK_FACE_array_t                    facesets[],  --- facesets
const PK_FACE_delete_facesets_o_t *options,     --- options structure

--- returned arguments ---
int                         *const n_bodies,    --- number of resulting bodies
PK_BODY_t                  **const bodies,      --- resulting bodies
int                         *const n_failed_facesets,
                                                --- number of facesets that
                                                --- could not be deleted
int                        **const failed_facesets_indices
                                                --- indices of facesets that
                                                --- could not be deleted
)


This function deletes a collection of facesets from a body.


Specific Errors:
    PK_ERROR_not_implemented       (MILD) requested option not implemented
    PK_ERROR_not_connected         (MILD) the faces of a faceset do not form
                                   a connected set
    PK_ERROR_all_faces_in_body     (MILD) cannot delete all faces from body
    PK_ERROR_not_in_same_body      (MILD) faces not all from same body
    PK_ERROR_duplicate_array_item  (MILD) some face appears more than once in
                                   facesets
    PK_ERROR_general_body          (MILD) facesets come from general body
    PK_ERROR_bad_tolerance         (MILD) invalid tolerance


Each faceset is a connected set of faces which are to be deleted from the body.
Deleting each faceset leaves a wound.  The healing of wounds is controlled
by options in the options structure.

The operation may split a body into two or more bodies. All resulting bodies
are returned.

For any faceset which could not be deleted and healed (if required) the
function returns the index in the facesets array of that faceset.