PK_EDGE_make_faces_from_wire   

PK_ERROR_code_t  PK_EDGE_make_faces_from_wire
(
--- received arguments ---
int                 n_edges,           --- number of edges
const PK_EDGE_t     edges[],           --- initial wireframe edges
const PK_LOGICAL_t  senses[],          --- senses of initial fins
const int           shared_loop[],     --- mapping from loops to faces

--- returned arguments ---
PK_FACE_t           new_faces[]        --- new faces created
)


This function attaches faces to closed loops of wireframe edges in a body.


Specific Errors:
    PK_ERROR_unsuitable_entity    Edge not in closed wireframe loop
    PK_ERROR_not_in_same_body     All the edges are not in the same body
    PK_ERROR_wrong_number_edges   Attempted to create the same loop twice
    PK_ERROR_bad_index            Can't find other loop in same face


Each edge should be one of a closed loop of wireframe edges.  Each
corresponding entry in 'edges' and 'senses' represents a loop in a face to be
created.  The sense indicates the required sense of the fin to be created
corresponding to the edge, and this fin will be the first fin of the new loop.

The array 'shared_loop' indicates which loops should occur in the same face.
Each entry of the array should either be negative or the index of a loop with
which it is to share a face.  If it is negative then the corresponding loop
will belong to a new face.  If it is non-negative, then it must be the
index of an earlier loop - in other words, the value of entry i must be less
than i.  The order of the loops in a face is not defined.

The new faces are returned in 'new_faces', each entry of which will contain the
face corresponding to each edge in 'edges' (and therefore may contain repeats).
The new faces will not have surfaces attached to them.

All of the edges must belong to a single body whose type may either be wire or
general.  The same closed loop must not be represented more than once and must
not contain any non-manifold vertices.

If the body is wire, the construction of the faces is successful, and there are
no wireframe edges remaining, then the body will become a sheet body.  If the
body is wire and there are wireframe edges remaining, then the body will become
general.