PK_SURF_make_bsurf_o_t   

struct PK_SURF_make_bsurf_o_s
    {
    int                        o_t_version;
    double                     tolerance; --- tolerance for
                                          --- approximate result
                                          --- (1.0e-5)
    PK_LOGICAL_t               force_cubic;
                                          --- force cubic B-surface
                                          --- (PK_LOGICAL_false)
    PK_LOGICAL_t               force_non_rational;
                                          --- force non-rational
                                          --- B-surface
                                          --- (PK_LOGICAL_false)
    PK_force_continuity_t      force_continuity;
                                          --- controls whether to
                                          --- force a certain level of
                                          --- continuity
                                          --- (PK_force_continuity_no_c)
    PK_continuity_t            continuity;
                                          --- level of continuity
                                          --- (PK_continuity_c1_c)
    PK_make_bsurf_update_t     update;    --- update flag
                                          --- (PK_make_bsurf_update_default_c)
    };

typedef struct PK_SURF_make_bsurf_o_s PK_SURF_make_bsurf_o_t;



This structure holds optional controls on converting a surface into a
B-surface.

Used in:

PK_SURF_make_bsurf_2


The option structure for making a B-surface has the following fields :

'tolerance'          If the function is unable to make an exact B-surface, this
                     specifies the maximum deviation between the resultant
                     B-surface and the input surface. The function will usually
                     achieve this condition but this is not guaranteed.
                     (1.0e-5)

'force_cubic'        If set to PK_LOGICAL_true, the resultant surface will be
                     cubic in u and v. Otherwise, the degree will depend on the
                     input surface. (PK_LOGICAL_false)

'force_non_rational' If set to PK_LOGICAL_true, the resultant surface will be
                     non-rational. Otherwise, the surface may or may not be
                     rational, depending on the input surface.
                     (PK_LOGICAL_false)

'force_continuity'   This option allows a minimum level of continuity of the
                     resultant surface to be supplied through the 'continuity'
                     option, and also controls how discontinuities of the input
                     'surf' will be handled.  It has the possible values:

                        o PK_force_continuity_yes_c
                          All discontinuities will be eliminated up to the
                          level specified by the 'continuity' option. Closed,
                          non-periodic surfaces will be made periodic.

                        o PK_force_continuity_prefer_c
                          If possible, the resulting surface will be continuous
                          up to the level specified by the 'continuity' option.
                          Large G1 discontinuities will be preserved and
                          reported in a PK_REPORT_3_discontinuities_c record.
                          Closed, non-periodic surfaces will be made periodic
                          unless there is a large G1 discontinuity across the
                          seam.

                        o PK_force_continuity_no_c
                          No attempt will be made to remove discontinuities.
                          This is the default value. Periodicity of closed
                          surfaces will not be enforced.

'continuity'         The desired continuity of the resulting 'bsurf'.
                     This is ignored if 'force_continuity' is set to
                     PK_force_continuity_no_c. The possible values are:
                         PK_continuity_c1_c
                         PK_continuity_c2_c
                         PK_continuity_g1_c
                         PK_continuity_g2_c
                     (PK_continuity_c1_c)

'update'             The default value (PK_make_bsurf_update_default_c) allows
                     applications to take advantage of the latest enhancements
                     to the algorithm. To maintain consistency when rebuilding
                     models created in a previous version of Parasolid, a
                     non-default value should be specified.