PK_FACE_imprint_faces   


PK_ERROR_code_t PK_FACE_imprint_faces
(
--- received arguments ---
int                          n_targets,   --- number of target faces
const PK_FACE_t              targets[],   --- target faces
int                          n_tools,     --- number of tool faces
const PK_FACE_t              tools[],     --- tool faces
const PK_FACE_imprint_o_t   *options,     --- imprint options

--- returned arguments ---
PK_imprint_r_t        *const results      --- imprint results
)


This function imprints edges on the given target and tool faces.


Specific Errors:
    PK_ERROR_cant_do_imprint          imprint failure
    PK_ERROR_tool_faces_many_bodies   tool faces are from more than
                                      one body
    PK_ERROR_targ_faces_many_bodies   target faces are from more
                                      than one body
    PK_ERROR_wire_body                target or tool body is wire body
                                      or face of wire body
    PK_ERROR_missing_geom             target or tool has incomplete geometry
    PK_ERROR_same_tool_and_target     target and tool are the same body
    PK_ERROR_partial_no_intersect     no imprinting on target or tool



Introduction

The function takes the target and tool faces and adds edges and
vertices where the faces intersect (except where they already
exist). The corresponding imprinted (or original) edges and vertices
are returned in matching arrays contained within the results
structure. Vertices are returned only where they are isolated points
of contact between the target and tool faces.

The target and tool faces can each belong to either a solid or sheet
body.


Imprint Options

The option structure passed to this function provides the application
programmer with the following controls:

 o Restrict imprint to the target body only
 o Imprint boundaries of overlapping areas
 o Extend face list on target

Refer to the PK_FACE_imprint_o_t documentation for more detailed
information about the options within this structure.


Returned Arguments

Refer to the PK_imprint_r_t documentation for information
about the arrays returned in the results structure.


Error Reporting

When an error occurs the function will, where possible, make extra
information related to the error available to the application via the
standard form of the error. This information will consist of either a
single or a group of topological or geometric entities.

This mechanism is identical to that of the PK boolean functions.
Refer to the PK_BODY_boolean for a more detailed description of
the error reporting mechanism.