PK_BODY_imprint_cus_vec   

PK_ERROR_code_t                     PK_BODY_imprint_cus_vec
(
--- received arguments ---
PK_BODY_t                           body,        --- a body
int                                 n_curves,    --- number of curves
const PK_CURVE_t                    curves[],    --- curves
const PK_INTERVAL_t                 intervals[], --- parametric intervals
                                                 --- of curves
double                              tol,         --- tolerance
const PK_VECTOR_t                   direction,   --- direction to project
                                                 --- curves in
const PK_BODY_imprint_cus_vec_o_t  *options,     --- options

--- returned arguments ---
PK_TOPOL_track_r_t           *const tracking     --- tracking information
)


This function imprints the given curves on the body by projecting them in the
given direction.

NOTE: This function is deprecated and has been superseded by PK_CURVE_project.



Specific Errors:

    PK_ERROR_invalid_geometry         Invalid curve
                                      (MILD)

    PK_ERROR_unsuitable_entity        The target body or supplied curves are
                                      unsuitable for this operation
                                      (MILD)

    PK_ERROR_cant_do_imprint          Failed to perform imprint
                                      (MILD)

    PK_ERROR_unsupported_operation    Body is not a sheet body
                                      when completing imprint
                                      (MILD)

    PK_ERROR_cant_complete_imprint    Failed to complete imprint
                                      (SERIOUS)

    PK_ERROR_ambiguous_imprint        Failed to complete because
                                      initial imprint is ambiguous
                                      (SERIOUS)



Edges and vertices are added to the body. These are the image of the curves on
the body under projection in the supplied direction. The edges created by this
imprinting are returned. These may include existing edges where the curves
project down onto existing edges.

Edges are imprinted on faces of the body which are visible in the view
direction but whether side or hidden faces are also imprinted to produce a
connected imprint is controlled by the option structure.

See Connecting disjoint components of an imprint for more
information.

The tolerance supplied is used to solve any resolution problems and may also be
used to create SP-curves on the imprinted edges.

The tracking information is returned by returning a track record for each
imprinted edge. Each edge has two original_topols. The first of these is the
input curve which gave rise to this edge. The second is the original
topology on the body where this edge is created. This is usually a face,
but where the edge is imprinted along a pre-existing edge that edge is
returned instead. Imprinted edges arising from any requested imprint
completion are tracked by the same method, but the original topology
associated with the edge is always null.

This operation does not work on a wire body or any body whose faces have no
attached geometry.

If curves intersect in the view direction ( other than meeting end to end to
form a chain ) then the option 'process_intersections' must be set
appropriately for the function call to succeed.