PK_FACE_delete_o_t   

struct PK_FACE_delete_o_s
    {
    int                   o_t_version;  --- version number of option structure
    PK_local_ops_update_t update;       --- update flag
                                        --- (PK_local_ops_update_default_c)
    PK_FACE_heal_t        heal_action;  --- how to heal wounds
                                        --- (PK_FACE_heal_shrink_c)
    PK_FACE_heal_loops_t  heal_loops;   --- how to process the loops of
                                        --- the wound [PF]
                                        --- (PK_FACE_heal_loops_auto_c)
    PK_LOGICAL_t          local_check;  --- whether to perform local checking
                                        --- (PK_LOGICAL_true)
    PK_LOGICAL_t          allow_disjoint;
                                        --- whether to allow disjoint results
                                        --- (PK_LOGICAL_false)
    PK_repair_fa_fa_t     repair_fa_fa; --- whether to repair face-face
                                        --- inconsistencies
                                        --- (PK_repair_fa_fa_no_c)
    PK_delete_track_t     track;        --- whether to track new entities
                                        --- (PK_delete_track_no_c)
    };
typedef struct PK_FACE_delete_o_s PK_FACE_delete_o_t;


This structure contains optional controls for PK_FACE_delete_2.


Specific Errors:
    PK_ERROR_not_implemented        (MILD)    'heal_action' not implemented.

    PK_ERROR_bad_combination        (MILD)    'local_check' is set to
                                              PK_LOGICAL_true and 'heal_action'
                                              is set to PK_FACE_heal_no_c.

                                              'allow_disjoint' is set to
                                              PK_LOGICAL_true, 'heal_action'
                                              is set to PK_FACE_heal_no_c and
                                              'heal_loops' is set to
                                              PK_FACE_heal_loops_separate_c.

                                              'repair_fa_fa' is set to
                                              PK_repair_fa_fa_yes_c and
                                              'local_check' is set to
                                              PK_LOGICAL_false.

                                              'heal_loops' is set to
                                              PK_FACE_heal_loops_auto_c and
                                              'heal_action' is set to
                                              PK_FACE_heal_no_c or
                                              PK_FACE_heal_cap_c.

                                              'track' is set to
                                              PK_delete_track_rubber_c and
                                              'heal_action' is not set to
                                              PK_FACE_heal_no_c.

                                              'track' is set to
                                              PK_delete_track_cap_c and
                                              'heal_action' is not set to
                                              PK_FACE_heal_cap_c.


Used in:

PK_FACE_delete_2


Description of fields:

'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.

'heal_action'       Controls how to heal the wound. This may take the
                    values:
                        PK_FACE_heal_no_c
                        PK_FACE_heal_cap_c,
                        PK_FACE_heal_grow_from_parent_c
                        PK_FACE_heal_shrink_c

                    Other values are not allowed.

                    If 'heal_loops' is set to PK_FACE_heal_loops_auto_c
                    then a 'heal_action' of PK_FACE_heal_no_c or
                    PK_FACE_heal_cap_c is not permitted.

                    The default value is PK_FACE_heal_shrink_c.

'heal_loops'        Controls how to heal loops of the wound.

                    Note that the combination of PK_FACE_heal_cap_c and
                    PK_FACE_heal_loops_together_c is not supported for
                    facet geometry. If the options have these values,
                    PK_ERROR_facet_geometry will be returned.

                    The default value is PK_FACE_heal_loops_auto_c.

'local_check'       Whether to perform checks on newly created topology
                    and geometry.  If this option is set to
                    PK_LOGICAL_true, a report of type PK_REPORT_1_t will be
                    returned via the Parasolid Report mechanism in these
                    circumstances:

                    - If a body failed local checking, then a record
                      with a 'status' of PK_REPORT_1_check_fail_c and
                      'new_items' containing the failing body will
                      be returned. This record is not returned if the
                      option 'repair_fa_fa' is set to
                      PK_repair_fa_fa_yes_c and the repair is successful.
                    - If after the initial deletion of faces any shell
                      of the body was inside out, was subsequently
                      negated, and the body is now valid, then a
                      record with a 'status' of PK_REPORT_1_negated_c
                      and 'new_items' containing the negated shell(s)
                      will be returned.

                    This option may not be set to PK_LOGICAL_true if
                    the 'heal_action' is PK_FACE_heal_no_c. If the
                    options have these values, PK_ERROR_bad_combination
                    will be returned.

                    The default value is PK_LOGICAL_true.

'allow_disjoint'    Whether to allow a disjoint result body.  If this
                    option is set to PK_LOGICAL_false and healing splits
                    the original body into multiple components,
                    these will become separate bodies and be reported
                    in a tracking record of type PK_TOPOL_track_split_c.

                    This option may not be set to PK_LOGICAL_true if
                    the 'heal_action' is PK_FACE_heal_no_c and
                    'heal_loops' is PK_FACE_heal_loops_separate_c. If the
                    options have these values, PK_ERROR_bad_combination
                    will be returned.

                    The default value is PK_LOGICAL_false.

'repair_fa_fa'      Controls whether face-face inconsistencies found by local
                    checking are repaired. Repairs will be done when it is set
                    to PK_repair_fa_fa_yes_c. If the repairs are successful, a
                    report of type PK_REPORT_1_t will be returned via the
                    Parasolid Report mechanism. This will contain a record
                    with a 'status' of PK_REPORT_1_fa_fa_repair_c and
                    'new_items' containing the edges which were created by
                    intersecting the pairs of clashing faces.

                    This option may not be set to PK_repair_fa_fa_yes_c if
                    the 'local_check' is set to PK_LOGICAL_false. If the
                    options have these values, PK_ERROR_bad_combination
                    will be returned.

                    The default value is PK_repair_fa_fa_no_c.

'track'             Whether to track new entities resulting from the delete
                    operation.

                    This option can be set to PK_delete_track_rubber_c only
                    when the 'heal_action' is set to PK_FACE_heal_no_c.
                    Similarly, it can be set to PK_delete_track_cap_c only
                    when the 'heal_action' is set to PK_FACE_heal_cap_c.

                    The default value is PK_delete_track_no_c.