Synopsis
PDX_MSGT gcr_Face(long option, MDA_PTR orig_db_ptr, PDX_BOOL surf_sense, MDA_PTR surf_ptr, PDX_BOOL first_is_outer, MDA_COUNT num_of_loops, struct t_gdx_face_loops *loops, int gdx_model, MDA_PTR *gdx_face_ptr)
Purpose
Create a GDX Face.
Description
Given the number of loops, the structures of loop pointers and senses, the pointer to the surface, sense of the surface, and a flag indicating the first boundary is the outer boundary, create a GDX Face. The loop sense flags indicates the senses of the loops with respect to the face, PDX_TRUE means the sense agrees. The surf_sense flag indicates the sense of the surface normal with respect to the face, PDX_TRUE means the surface normal and face normal have the same direction. Loop directions are based on the surface normal after the surf_sense flag is applied (i.e. if surf_sense is PDX_FALSE, the outer loop must be defined clockwise). If the GCR_ADD_EC_FACES option is specified, then the underlying GDX Edge Curves will be automatically updated (via gcr_EdgeCurveAddFace) to include this face in their 'faces' data. This is intended for the case when the underlying GDX Edge Curves were created without 'faces' data. The orig_db_ptr argument should contain the database pointer of the entity that the new entity was created from (usually this should be obtained by the calling routine via mda_GetOrigDbptr) or MDA_NULL_PTR. See the mda_intro man page for more information about predecessor entities.
Input
option
GCR_NOVALIDATE
No validation will occur on the input data.
GCR_ADD_EC_FACES
Underlying GDX Edge Curves will be updated with corresponding face information (see above).
orig_db_ptr
The original entities orig_db_ptr as obtained from the mda_GetOrigDbptr call, or MDA_NULL_PTR
surf_sense
Sense of the surf_ptr normal with respect to the face.
surf_ptr
Pointer to the suface.
first_is_outer
Flag indicating if the first boundary is outer.
num_of_loops
Number of loops that make up the Face, must be > 0.
loops
MDA memory contaings structures of the senses and database pointers of loops that make up the face. Always consumed by this function even on error.
gdx_model
The GDX model for entity creation
Output
gdx_face_ptr
Entity database pointer of the GDX Face
Tolerances
.fi
Return
GCR_NOERR
GCR_INVALID_MODEL
Low level error return
.fi