PK_SPCURVE_sf_t   



struct PK_SPCURVE_sf_s
    {
    PK_SURF_t             surf;          --- surface
    PK_CURVE_t            curve;         --- curve
    };

typedef struct PK_SPCURVE_sf_s PK_SPCURVE_sf_t;



Specific Errors:
    PK_ERROR_unsuitable_entity      curve is not a BCURVE
    PK_ERROR_bad_dimension          curve is not 2D
    PK_ERROR_invalid_geometry       curve does not make a single valid
                                    spcurve when embedded in surf  (SERIOUS)


An spcurve is the 3D curve resulting from embedding a 2D curve in the
parameter space of a surface.

The curve must be a 2D BCURVE; that is it must either be a rational bcurve
with a vertex dimensionality of 3, or a non-rational bcurve with a vertex
dimensionality of 2.

An spcurve may start or end on a surface degeneracy or singularity or it may
lie entirely within a degeneracy.  An spcurve may not otherwise touch a
surface degeneracy.

An spcurve must be G1 continuous and, if periodic, must meet itself with G1
continuity.