PK_FACE_replace_surfs   


PK_ERROR_code_t         PK_FACE_replace_surfs
(
--- received arguments ---
int                     n_faces,       --- number of faces
const PK_FACE_t         faces[],       --- faces
const PK_SURF_t         surfs[],       --- replacement surfaces
double                  tolerance,     --- tolerance for replacement geometry
PK_LOGICAL_t            local_check,   --- whether to perform local check

--- returned arguments ---
PK_local_check_t *const check_result   --- result of local check
)


This function replaces the geometry of the given faces with the
supplied surfaces.

NOTE: This functions is obsolete and has been superseded by
PK_FACE_replace_surfs_2


Specific Errors:
    PK_ERROR_tool_faces_many_bodies   faces do not belong to a single body



All geometry of the given faces is replaced by the given geometry
in surfs. The geometry of the edges and vertices connected to
the modified faces will be deleted and recalculated.

Where edges are adjacent to faces whose geometry is being replaced,
the edge curves are re-computed as the intersection of the face
surfaces.

Where edges or faces (sharing a vertex or edge at the boundary of the
faces to be modified) have geometry which is inextendable, it may not
be possible to recalculate vertices or edges. This is because the curve
or surface do not intersect the new surface. If such edges have a user
defined tolerance, this is likely to occur since SP-curves are
inextendable.

If the given faces are on a sheet body, they must not share an edge with
any rubber faces.


Surface Orientation

The orientation of each input surface is assumed to be compatible with
the face whose surface is being replaced. This implies that the normal
of the input surface must be in a direction that ensures the loops of
the face are still valid.

Once the new surface is attached to the face, the loop directions of the
face must still be valid with respect to the new face normal. The geometry
of the loop will have to be recalculated, but the loop direction must
remain the same for the operation to succeed.


Returned Check Status

If local checking is on, consistency checks will be made on newly
created topological and geometrical entities, and the result of
the local check on the body returned via check_result :

 o PK_local_check_ok_c       indicates the body is valid.

 o PK_local_check_no_c       indicates that local checking is
                             switched off.

 o PK_local_check_failed_c   indicates the body is invalid and
                             further modelling operations on it
                             may fail. It is the responsibility
                             of the calling routine to make any
                             necessary reparation.