PK_SURF_make_curve_u_isoparam   


PK_ERROR_code_t     PK_SURF_make_curve_u_isoparam
(
--- received arguments ---
const PK_SURF_t     surf,           --- surface
const double        param,          --- u parameter

--- returned arguments ---
PK_CURVE_t   *const curve           --- analytic or SP curve
)


This constructs a curve which is coincident with a constant 'u' parameter
line defined along the whole of the 'v' parameter interval of the surface.
If possible, the curve is simplified to an analytic curve type.
If simplification is not possible, the curve is represented as a surface
parameter curve between parametric space coordinates (param,v0) (param,v1)
where 'param' is received and [v0..v1] is the surface v parameter interval.


Specific Errors:
    PK_ERROR_bad_parameter         parameter lies outside 'u' range of surface
    PK_ERROR_invalid_geometry      cannot extract a 'v' interval from surface
    PK_ERROR_at_singularity        parameter passes through surface singularity
    PK_ERROR_wrong_entity          unsupported surface type
    PK_ERROR_failed_to_create_sp   cannot make the constant parameter line


If the curve is simplified to an analytic curve type, it will be coincident
with the whole 'v' parameter interval of the surface but may extend beyond
its confines.

The constructed curve is attached to the same owner part or partition as the
received surface.

The function always creates constant parameter lines on b-surfaces as analytic
or SP curves. Use PK_BSURF_make_bcurve_u_isoparam to create them as b-curves.