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