|
Data Structures
|
struct |
RtWingEdge
|
struct |
RtWingFace
|
struct |
RtWings
|
struct |
RtWingVertex
|
Enumerations
|
enum |
RtWingEdgeNeighborRelation { rtWINGEDGENULL = 0,
rtWINGEDGECREASE,
rtWINGEDGECONTINUOUS,
rtWINGEDGEFORCEENUMSIZEINT = RWFORCEENUMSIZEINT } |
enum |
RtWingEdgePartitioning { rtWINGEDGEPARTITIONFAN = 0,
rtWINGEDGEPARTITIONTACK, rtWINGEDGEPARTITIONEAR,
rtWINGEDGEPARTITIONFORCEENUMSIZEINT = RWFORCEENUMSIZEINT
} |
enum |
RtWingDecimationApproach { rtWINGEDGEDECIMATIONFEW =
0, rtWINGEDGEDECIMATIONSMALL,
rtWINGEDGEDECIMATIONFORCEENUMSIZEINT = RWFORCEENUMSIZEINT
} |
Functions
|
RtWingFace * |
RtWingFaceForAllEdges (RtWingFace *wingFace,
RtWingEdgeCallBack callBack, void *userData) |
RtWingFace * |
RtWingFaceForAllFaces (RtWingFace *wingFace,
RtWingFaceCallBack callBack, void *userData) |
RtWingVertex * |
RtWingVertexForAllEdges (RtWingVertex *wingVertex,
RtWingEdgeCallBack callBack, void *userData) |
RtWingVertex * |
RtWingVertexForAllFaces (RtWingVertex *wingVertex,
RtWingFaceCallBack callBack, void *userData) |
void |
RtWingEdgeDecimation (RtWings *wings, RtGCondGeometryList
*geometryList) |
void |
RtWingConvexPartitioning (RtWings *wings, RtGCondGeometryList
*geometryList, RtWingEdgePartitioning how) |
void |
RtWingPartitionPolygon (RtWings *wings, RtWingFace *face, RtGCondGeometryList
*geometryList, RtWingEdgePartitioning how, RwInt32 ctr) |
void |
RtWingDestroy (RtWings *wings) |
void |
RtWingCreate (RtWings *wings, RtGCondGeometryList
*geometryList) |
void |
RtWingUpdateInternalRepresentation
(RtWingFace *face,
RtWingEdge *edge,
RtWingVertex
*vertex) |
The functions in this toolkit implement, maintain and operate on
polygons using a modified wing/half-edge data structure. The wing
representation allows efficient querying (typically O(1)) and
modification of geometry. (Internally, the geometry takes a
RtGCond form.)