Tessellation Module
Creates and accesses tessellation entities.
This module describes how to access and encode tessellation for a variety of entities. It also provides information about tessellations, associated textures, and markup representations.
Usage
Tessellation entities can appear in the``pTessBase``member of all types of representation items, except:c:type:~A3DRiCoordinateSystemand:c:type:~A3DRiPointSet.
If your application parses PRC content, you must develop dedicated functions to parse the base tessellation data and to parse each type of tessellation entity. The following sample code demonstrates the following basic steps:
- Use the:c:func:~A3DTessBaseGetfunction to get the tessellation base data.
- Use the:c:func:~A3DEntityGetTypefunction to determine the specific tessellation type.
- Invoke a custom function to parse the entity contents.
Sample code
A3DRiRepresentationItemDatasRiData;
/*CalltheA3DRiRepresentationItemGetfunctiontogettheA3DRiRepresentationItemData*/
if(sRiData.m_pTessBase!=A3D_NULL_HANDLE)
{
A3DEEntityTypeeType;
if(A3DEntityGetType(sRiData.m_pTessBase,&eType)==A3D_SUCCESS)
{
switch(eType)
{
casekA3DTypeTess3D:
{
A3DTess3D*pTess3D=(A3DTess3D*)sRiData.m_pTessBase;
/*Callcorrespondingfunction...*/
break;
}
casekA3DTypeTess3DWire:
{
A3DTess3DWire*pTess3DWire=(A3DTess3DWire*)sRiData.m_pTessBase;
/*Callcorrespondingfunction...*/
break;
}
casekA3DTypeTessMarkup:
{
A3DTessMarkup*pTessMarkup=(A3DTessMarkup*)sRiData.m_pTessBase;
/*Callcorrespondingfunction...*/
break;
}
default:
/*Nothingelse*/
break;
}
}
}
:c:type:`~A3DTess3D`
:c:type:`~A3DTess3DWire`
:c:type:`~A3DTessMarkup`
Parameters
pA3DRepItem: The representation item to tessellate.
pTessellationParametersData: The tessellation parameters.
Returns
A3D_SUCCESS on success or an error code on failure.
Topics
Structures
Enumerations
Functions