PK_EDGE_attach_curve_nmnl   


PK_ERROR_code_t  PK_EDGE_attach_curve_nmnl
(
--- received arguments ---
PK_EDGE_t                            edge,      --- edge to which 'curve'
                                                --- will be attached
PK_CURVE_t                           curve,     --- curve of edge
const PK_EDGE_attach_curve_nmnl_o_t *options    --- option structure
)


This function attaches the curve provided to the edge as a nominal curve.


Specific Errors:
    PK_ERROR_curve_nmnl_off         nominal curves are not enabled on the
                                    body to which edge belongs
    PK_ERROR_invalid_geometry       curve does not check
    PK_ERROR_geom_not_needed        edge already has a nominal curve
    PK_ERROR_bad_interval           parameter interval is not consistent with
                                    end-points of edge
    PK_ERROR_missing_geometry       vertices or fins have missing geometry
    PK_ERROR_inconsistent_geom      curve is not consistent with the geometry
                                    of edge
    PK_ERROR_bad_shared_dep         curve, or one of its dependents, would be
                                    illegally shared


curve is attached to edge, as a nominal curve. edge must not already
have nominal geometry attached, and must be tolerant.

If edges fins have sp-curves, then curve must lie within edges
precision of these along the whole length of edge, or the call will fail
with PK_ERROR_inconsistent_geom.

If the application needs to fix the exact parameter values of the end-points
(as returned by PK_EDGE_ask_geometry_nmnl) it should supply them as an interval
in the options structure, otherwise they will be calculated from the end-points
of the edge.

Nominal geometry must be enabled for the body to which edge belongs, or
the error PK_ERROR_curve_nmnl_off results.

curve must be either

    o orphan geometry in the same partition as edge, which does not share
      dependents with any other orphan geometry, or

    o construction or boundary geometry in the body of edge

Note that curve may already be attached to another edge as edge geometry,
fin geometry or nominal geometry.  In this case, where possible, curve will
be shared, otherwise a copy of curve will be attached to edge.