PK_FACE_make_neutral_sheet   


PK_ERROR_code_t  PK_FACE_make_neutral_sheet
(
--- received arguments ---
PK_FACE_t        faces[2],      --- two faces
double           placement,     --- placement parameter

--- returned arguments ---
PK_BODY_t *const neutral_sheet  --- neutral sheet
)


This function creates the neutral surface defined by the surfaces on the
faces and returns it as a sheet body.





The two faces should be from the same body.

The value of placement will be used to create a neutral surface
whose points satisfy the following expression:

                    (1 - p) D1 = (1 + p) D2

where p is the value of placement, D1 is the distance to the surface
of `faces[0]' and D2 is the distance to the surface of `faces[1]'.  If
p = 0, then the neutral surface is equidistant from the given
surfaces.  If p = -1 then the neutral surface will be a copy of the
surface of the first face and if p = 1 it will be a copy of the
surface of the second face.

For values of p other than -1 or 1, a neutral surface will only be
created if the given surfaces are offsets of each other.




The whole of the parameter range of the neutral surface will be used
in the returned sheet unless the parameter is not limited.  In this
case the sheet will be bounded to be at least as big as the box of the
body which contains the faces.

If the neutral surface cannot be created, then neutral_sheet will be
PK_ENTITY_null.