3D wire data structure More...
Data Fields | |
A3DUns16 | m_usStructSize |
A3DUns32 | m_uiSizesWiresSize |
A3DUns32 * | m_puiSizesWires |
A3DBool | m_bIsRGBA |
A3DBool | m_bIsSegmentColor |
A3DUns32 | m_uiRGBAVerticesSize |
A3DUns8 * | m_pucRGBAVertices |
3D wire data structure
The A3DTessBaseData::m_pdCoords member represents point coordinates, which are interpreted in groups of three (X, Y, Z) to represent 3D vectors.
The m_uiSizesWiresSize member represents the number of wire indexes in the whole A3DTess3DWireData. The m_puiSizesWires member references an array of wire indexes in the array of points A3DTessBaseData::m_pdCoords.
If m_uiSizesWiresSize is zero, the tessellation is given as a single wire edge with the array of points contained as described in A3DTessBaseData::m_pdCoords. Conversely, if m_uiSizesWiresSize is non-zero, the array referenced by m_puiSizesWires describes single edges as follows:
Continuing with the non-zero case, the number of indexes can include the flags described in Flags for Specifying Wire Characteristics.
Consider the following example of two wires of three points, then 4 others:
If the second wire is closed, the stored values are as follows:
m_puiSizesWires = [3, index point 1, index point 2, index point 3, 4 | kA3DTess3DWireDataIsClosing, index point 1, index point 2, index point 3, index point 4]
The following A3DTess3DWireData members also apply to wire representations:
A3DUns16 A3DTess3DWireData::m_usStructSize |
Reserved; must be initialized with A3D_INITIALIZE_DATA.
A3DUns32 A3DTess3DWireData::m_uiSizesWiresSize |
Size of next array.
A3DUns32* A3DTess3DWireData::m_puiSizesWires |
See explanations in Detailed Description.
A3DBool A3DTess3DWireData::m_bIsRGBA |
See explanations in Detailed Description.
A3DBool A3DTess3DWireData::m_bIsSegmentColor |
See explanations in Detailed Description.
A3DUns32 A3DTess3DWireData::m_uiRGBAVerticesSize |
Size of next array.
A3DUns8* A3DTess3DWireData::m_pucRGBAVertices |
See explanations above.