PK_BODY_sew_bodies_o_t   


struct PK_BODY_sew_bodies_o_s
    {
    int                      o_t_version;
    PK_LOGICAL_t             set_global_tolerance, --- (PK_LOGICAL_false)
                             allow_disjoint_result,--- (PK_LOGICAL_false)
                             treat_as_manifold;    --- (PK_LOGICAL_true)
    PK_BODY_sewing_type_t    prefered_body_type;   --- (PK_BODY_sewing_any_c)
    PK_BODY_sewing_removal_t duplicate_removal;
                                           --- (PK_BODY_sewing_remove_none_c)
    int                      number_of_iterations; --- (1)
    double                  *iteration_bounds;     --- (NULL)
    };

typedef struct PK_BODY_sew_bodies_o_s PK_BODY_sew_bodies_o_t;



Holds optional controls on the execution of sewing.


The option structure defines options applicable to the sewing together of
sheet bodies.

The structure has six user fields:

    allow_disjoint_result:  If true sewing can return several disjoint sheets
                            produced by sewing. When this is false the only
                            sheet returned is the one produced by sewing
                            sheets onto the first one provided in the list
                            of received bodies.
                            ( default is false )

    treat_as_manifold:      Assume the result is manifold. If have more than
                            two edges paired, assume the closest pairing is
                            the intended one.

    prefered_body_type:     An "enum" indicating the prefered type of the
                            result.

    duplicate_removal:      An "enum" indicating effort to be placed in
                            removing duplications in the input sheets.

    number_of_iterations:   This specifies the number of gap width bound
                            values to iterate over while sewing. This must
                            exceed 0.

                            Where the 'number_of_iterations' is 1, the gap
                            width bound specified in the 'gap_width_bound'
                            argument is used for a single sewing attempt.

                            Where the value of this option field exceeds 1,
                            sewing will make the specified number of attempts
                            to complete the sewing operation.

                            If iteration is requested and the array held in
                           'iteration_bounds' is not NULL, an attempt to sew
                            the bodies will be carried out at each gap width
                            bound specified in the array ( assumed to hold
                           'number_of_iteration' values' ). The gap width
                            bounds will be used in the order in which they
                            appear in the array. It is expected that the best
                            results will occur when the values are in
                            ascending order.

                            Iteration may be requested, with the value of
                           'iteration_bounds' set to NULL. In this case
                            Parasolid will generate 'number_of_iterations'
                            ascending values terminating in 'gap_width_bound'.
                            The range of values chosen will not exceed two
                            orders of magnitude, other than that the chosen
                            values are not specified.

    iteration_bounds:       If the number of iterations exceeds 1 this
                            array will be used as the source of gap width
                            bounds for each iteration unless it is set to NULL.
                            In the latter case Parasolid will generate a
                            range of gap width bounds based on the value of
                            the 'gap_width_bound' passed to PK_BODY_sew_bodies.

                            Where the number of iterations is one, this option
                            field is ignored.