PK_FIN_attach_curves   

PK_ERROR_code_t     PK_FIN_attach_curves
(
--- received arguments ---
int                 n_fins,       --- number of fins
const PK_FIN_t      fins[],       --- fins to have curves attached
const PK_CURVE_t    curves[],     --- curves to be attached to fins
const PK_INTERVAL_t intervals[]   --- parametric bounds of each curve

--- returned arguments ---
)


This function attaches curves to fins.



Specific Errors:
    PK_ERROR_has_parent           'curve' is already attached
    PK_ERROR_bad_shared_dep       attempt to illegally share a dependant
                                  of 'curve'
    PK_ERROR_bad_shared_entity    attempt to illegally share 'curve'
    PK_ERROR_geom_not_needed      'fin' already owns geometry
    PK_ERROR_inconsistent_geom    inconsistent geometry
    PK_ERROR_invalid_geometry     geometry does not pass checks
    PK_ERROR_bad_parameter        'interval' is invalid on 'curve'



The arrays 'fins', 'curves' and 'intervals' are all of the length 'n_fins'.
All the 'fins' must belong to the same body.

Curves may only be attached to the fins of approximate edges.

All of the 'curves' must be of class PK_CLASS_spcurve or PK_CLASS_pline. For
each curve of class PK_CLASS_spcurve, there must also be supplied the
parametric interval which defines the part of the curve to be used. For each
curve of class PK_CLASS_pline, the supplied parametric interval must be the
interval returned from PK_CURVE_ask_interval. If the fin's edge has a vertex
or vertices, then the parameter bounds must correspond to the vertex
positions; that is, they must indicate positions which are within tolerance of
the vertices.

A curve may occur more than once in 'curves' and if this
is the case then the curve will be shared, providing the sharing is
legal.

PK_FIN_attach_curves will not copy any curves, thus attachments are
further restricted by constraints on the sharing of geometry:

    o No curve may belong to a different body.

    o An orphan curve may be attached to an edge as long as it has no
      dependents attached to topology and it has no dependents shared with
      any other orphan entity.

The curve must be capable of passing Parasolid's geometry checking.

The self intersection check is only performed if the appropriate interface
parameter is set. See PK_SESSION_set_check_self_int.

The G1 continuity check is only performed if the appropriate interface
parameter is set. See PK_SESSION_set_check_continuity.