PK_BSURF_create   

PK_ERROR_code_t      PK_BSURF_create
(
--- received arguments ---
const PK_BSURF_sf_t *bsurf_sf, --- b-surface standard form

--- returned arguments ---
PK_BSURF_t    *const bsurf     --- b-surface
)


This function creates a b-surface from the standard form.


Specific Errors:
    PK_ERROR_zero_interval          knot set covers a zero interval
    PK_ERROR_periodic_open          periodic surface is not closed
    PK_ERROR_periodic_not_smooth    periodic surface is not smooth at the seam
    PK_ERROR_bad_dimension          dimension != 3 polynomial or != 4 rational
    PK_ERROR_cant_make_bspline      failed to create the surface


Takes a standard form, and creates a b-surface.  Refer to the documentation
of  PK_BSURF_sf_t for a description of the standard form.  It is the
responsibility of the application to ensure that the surface does not
intersect itself, and that any periodic surfaces with bezier end conditions are
continuous across the seam. Continuity is achieved by satisfying two
conditions:
 o Corresponding triplets of vertices across the seam must be co-linear.
 o The relative spacing between the vertices in the triplets must be constant
   along the boundaries, and, if the surface is rational, the weights must be
   in a constant ratio.
See Continuity between patches for more information.

Only 3-space surfaces may be created by this function.