struct PK_SURF_extend_o_s
{
int o_t_version; --- option structure version
PK_SURF_extension_t extension_type; --- the type of the extension
--- (PK_SURF_extension_none_c)
PK_VECTOR_t extension_point; --- point to extend to.
PK_BOX_t extension_box; --- box to extend to.
PK_UVBOX_t extension_uvbox; --- uv box to extend to.
double u_ratio; --- ratio of the u parameter
--- range by which to extend
--- the low u boundary (0.0)
double U_ratio; --- ratio of the u parameter
--- range by which to extend
--- the high u boundary (0.0)
double v_ratio; --- ratio of the v parameter
--- range by which to extend
--- the low v boundary (0.0)
double V_ratio; --- ratio of the v parameter
--- range by which to extend
--- the high v boundary (0.0)
PK_LOGICAL_t allow_partial_extension;--- if true we will allow
--- partial extensions
--- (PK_LOGICAL_false)
};
typedef struct PK_SURF_extend_o_s PK_SURF_extend_o_t;
Holds optional controls for extending a surface.
The option structure defines options applicable to extending a surface. It
contains the following options:
extension_type Specifies what type of extension has been requested.
extension_point A three-space point to extend the surface to. This field
will only be looked at if extension_type has been set
to PK_SURF_extension_point_c. The resulting extended
surface will not necessarily contain this point.
extension_box A three-space box to extend the surface to. This field
will only be looked at if extension_type has been set
to PK_SURF_extension_box_c.
extension_uvbox A parameter box to extend the surface to. This field
will only be looked at if extension_type has been set
to PK_SURF_extension_uvbox_c.
The next four fields will only be looked at if the extension_type field
has been set to PK_SURF_extension_ratio_c. Values must not be less than
zero. A value of zero would provide no extension; a value of 0.1 would extend
a boundary by one tenth of the existing range of the boundary's parameter.
u_ratio An extension of the low u boundary of the surface,
expressed as a ratio of the existing u parameter
range.
U_ratio An extension of the high u boundary of the surface,
expressed as a ratio of the existing u parameter
range.
v_ratio An extension of the low v boundary of the surface,
expressed as a ratio of the existing v parameter
range.
V_ratio An extension of the high v boundary of the surface,
expressed as a ratio of the existing v parameter
range.
allow_partial_extension Whether the surface will still be extended by less
than the full extension requested in cases where
the full extension would result in an invalid
surface.