int PEXOCCGeoNormFillArea( PEXOCC context, PEXPointer occ_facet_data, unsigned int count, PEXPointer occ_vertex_data, int handedness )
int PEXGeoNormFillArea( unsigned int facet_attributes, unsigned int vertex_attributes, int color_type, PEXFacetData *facet_data, unsigned int count, PEXArrayOfVertex vertices )
Zero if successful; otherwise, one of the following:
Invoke PEXOCCGeoNormFillArea to compute the geometric normal of a fill area and store it in the specified facet data.
The normal is computed by finding the first three non- colinear points in the specified vertices, forming two vectors from those points, one from the first point to the second point and one from the first point to the third point, and computing the cross product of those two vectors. The geometric normal is the normalized cross product.
The three points, A, B, and C are selected as follows. Point A is the first point in the list of vertices. Point B is the next point in the list that is not coincident with A. Point C is the next point in the list that is not colinear with A and B. If it is not possible to find three such points, then this utility returns unsuccessfully.
PEXGeoNormFillArea assumes the handedness is PEXVertexOrderRightHand.
Specify the handedness argument to generate normals that match the orientation of the coordinate system that the vertex data uses. PEXVertexOrderRightHand indicates that the coordinate system is right-handed, and PEXVertexOrderLeftHand indicates that the normals are to be "flipped" from the right-handed orientation to match a left-handed coordinate system.
If the facet attributes does not contain the bit PEXGANormal, then this utility does not compute the geometric normal. However, the utility still returns successfully.
None.
For a list of utilities that compute geometric normals, see Computing Geometric Normals. For a list of related topics, see PEXlib Utilities.