Structure used to create or parse an A3DTess3D entity. More...

Data Fields

A3DUns32 m_bHasFaces
 
A3DBool m_bMustRecalculateNormals
 
A3DDouble m_dCreaseAngle
 
A3DDoublem_pdNormals
 
A3DDoublem_pdTextureCoords
 
A3DTessFaceDatam_psFaceTessData
 
A3DUns32m_puiTriangulatedIndexes
 
A3DUns32m_puiWireIndexes
 
A3DUns8 m_ucNormalsRecalculationFlags
 
A3DUns32 m_uiFaceTessSize
 
A3DUns32 m_uiNormalSize
 
A3DUns32 m_uiTextureCoordSize
 
A3DUns32 m_uiTriangulatedIndexSize
 
A3DUns32 m_uiWireIndexSize
 

Detailed Description

Structure used to create or parse an A3DTess3D entity.

Version
2.0
Note
The A3DTess3D entity includes data stored in the A3DTessBase entity.

Structure containing all global information for solid representation.

The m_bHasFaces member indicates whether the A3DTess3D entity is built with a concept of geometrical faces.

Point coordinates A3DTessBaseData::m_pdCoords are taken 3 by 3 to build up 3D vectors.

Normal coordinates m_pdNormals are taken 3 by 3 to build up 3D vectors.

Wire indexes in the m_puiWireIndexes array are the point indexes describing the face's wire contours in the array of points of A3DTessBaseData::m_pdCoords.

Triangulated indexes m_puiTriangulatedIndexes are the point, normal, and texture indexes describing the face triangulated representation (triangles, triangle fans, triangle strips) in the array of points, normals, and textures coordinates. The indexes are multiples of 3 for points and normals, and should be multiples of 1 to 4 for textures coordinates.

The contents of the A3DTessFaceData structure specifies how to interpret the data in this array, as described in TessFace.

The contents of the A3DTessFaceData structure also specifies how the texture coordinates m_pdTextureCoords are interpreted according to the final graphics of each A3DTessFaceData. This graphics is given either on the A3DTessFaceData structure or by the representation item owning the A3DTess3DData. Then, this graphics corresponds to a texture with an appropriate number of coordinates.

An A3DTessFaceData structure corresponds to a geometrical face if there is an indication that the tessellation has face data (as denoted by m_bHasFaces). Otherwise, it is simply a large container of any tessellated data.

Warning
A3DTessBaseData::m_uiCoordSize represents the size of the array referenced by A3DTessBaseData::m_pdCoords. It is not the number of 3D points.

Field Documentation

◆ m_bHasFaces

A3DUns32 A3DTess3DData::m_bHasFaces

A value of true indicates the geometrical face notion.

◆ m_uiNormalSize

A3DUns32 A3DTess3DData::m_uiNormalSize

The size of m_pdNormals

◆ m_pdNormals

A3DDouble* A3DTess3DData::m_pdNormals

Array of A3DDouble, x y z for each normal.

◆ m_uiWireIndexSize

A3DUns32 A3DTess3DData::m_uiWireIndexSize

The size of m_puiWireIndexes

◆ m_puiWireIndexes

A3DUns32* A3DTess3DData::m_puiWireIndexes

Array of indexes of points in A3DTessBaseData::m_pdCoords.

◆ m_uiTriangulatedIndexSize

A3DUns32 A3DTess3DData::m_uiTriangulatedIndexSize

◆ m_puiTriangulatedIndexes

A3DUns32* A3DTess3DData::m_puiTriangulatedIndexes

Array of indexes of points in A3DTessBaseData::m_pdCoords.

◆ m_uiFaceTessSize

A3DUns32 A3DTess3DData::m_uiFaceTessSize

The size of m_psFaceTessData

◆ m_psFaceTessData

A3DTessFaceData* A3DTess3DData::m_psFaceTessData

Array of face tessellation definition.

◆ m_uiTextureCoordSize

A3DUns32 A3DTess3DData::m_uiTextureCoordSize

The size of m_pdTextureCoords

◆ m_pdTextureCoords

A3DDouble* A3DTess3DData::m_pdTextureCoords

Array of A3DDouble, as texture coordinates.

◆ m_bMustRecalculateNormals

A3DBool A3DTess3DData::m_bMustRecalculateNormals

Normals must be recalculated.

◆ m_ucNormalsRecalculationFlags

A3DUns8 A3DTess3DData::m_ucNormalsRecalculationFlags

Unused parameter.

◆ m_dCreaseAngle

A3DDouble A3DTess3DData::m_dCreaseAngle

Unused parameter; definition similar to VRML.