CSLXSIPolygonList Class Reference

#include <XSIPolygonList.h>

Inheritance diagram for CSLXSIPolygonList:

CSLXSISubComponentList CSLTemplate CSIBCNode List of all members.

Public Types

typedef CSLArrayProxy< SI_Int,
SI_Int, 1 > 
CSLIntArray

Public Member Functions

  CSLXSIPolygonList (CSLScene *in_pScene, CSLModel *in_pModel, CdotXSITemplate *in_pTemplate)
virtual  ~CSLXSIPolygonList ()
virtual ETemplateType  Type ()
CSLBaseMaterial GetMaterial ()
CSIBCString  GetMaterialName ()
SI_Void  SetMaterial (CSLBaseMaterial *in_pNewMaterial)
SI_Void  SetMaterialName (const CSIBCString &in_szNewMaterialName)
SI_Int  GetPolygonCount ()
CSLIntArray GetPolygonNodeCountArray ()
CSLIntArray GetVertexIndices ()
SI_Error  Synchronize ()
virtual SI_Error  SetCount (SI_Int)
CSLXSIIndexList ConnectIndexList (CSLXSIIndexList *in_pNewXSIIndexList)
virtual CSLXSIIndexList AddIndexList ()
CSLXSIIndexList GetIndexList ()
SI_Error  RemoveIndexList ()

Detailed Description

Describes a list of n-sided polygons for dotXSI 5.0+ (see the XSI_PolygonList template reference). The polynodes in this list can have n number of attibutes like vertex, normals, UV and color information.

Tip:
You can use GetVertexIndices() to get the mandatory vertex index attributes and the parent class (CSLXSISubComponentList) functionality to get the other generic attributes index.
Tip:
You can use GetPolygonCount() to get the number of polygons in the list.
Tip:
To find out how many vertices a particular polygon uses, use GetPolygonNodeCountArray() to get the list of polygon vertices.


Member Typedef Documentation

typedef CSLArrayProxy<SI_Int, SI_Int, 1> CSLIntArray

Proxy class that allows modifying a list of SI_Int like an array.

Reimplemented from CSLXSISubComponentList.


Constructor & Destructor Documentation

CSLXSIPolygonList ( CSLScene in_pScene,
CSLModel in_pModel,
CdotXSITemplate in_pTemplate  
)

Constructor

Parameters:
in_pScene  Parent scene
in_pModel  Parent model
in_pTemplate  Refered template
Returns:
an instance of CSLXSIPolygonList

virtual ~CSLXSIPolygonList (  )  [virtual]

Destructor


Member Function Documentation

virtual ETemplateType Type (  )  [inline, virtual]

Returns the type of this template (XSI_POLYGON_LIST)

Returns:
CSLTemplate::ETemplateType The type of this template (XSI_POLYGON_LIST)

Implements CSLTemplate.

CSLBaseMaterial* GetMaterial (  )  [inline]

Return the material object of the polygon list.

Returns:
CSLBaseMaterial* Material object.

CSIBCString GetMaterialName (  ) 

Return the material object name of the polygon list or an empty string if there's none.

Returns:
CSIBCString Material object name.

SI_Void SetMaterial ( CSLBaseMaterial in_pNewMaterial  ) 

Change the material object of the polygon list.

Parameters:
CSLBaseMaterial*  New material object.
Returns:
None

SI_Void SetMaterialName ( const CSIBCString in_szNewMaterialName  ) 

Change the material object name of the polygon list. Should ONLY be called if we don't export the material.

Parameters:
const  CSIBCString& New material object name.
Returns:
None

SI_Int GetPolygonCount (  ) 

Get the number of polygon.

Returns:
SI_Int Number of polygon.

CSLIntArray* GetPolygonNodeCountArray (  ) 

Get the polygon count array.

Returns:
CSLIntArray Array of polygon node count.

CSLIntArray* GetVertexIndices (  ) 

Get the polynode vertex indices array.

Returns:
CSLIntArray Array of polynode vertex indices.

SI_Error Synchronize (  )  [virtual]

Commit the current template information

Returns:
SI_Error Whether or not the commit was successful

Reimplemented from CSLTemplate.

virtual SI_Error SetCount ( SI_Int   )  [virtual]

Set the number of polynode in this polygon list.

Returns:
SI_Error Error code.

Reimplemented from CSLXSISubComponentList.

CSLXSIIndexList* ConnectIndexList ( CSLXSIIndexList in_pNewXSIIndexList  ) 

Connect a new index list.

Returns:
CSLXSIIndexList The newly connected index list.

virtual CSLXSIIndexList* AddIndexList (  )  [virtual]

Add a new index list. If an index list already exists, it will be deleted, and replaced.

Returns:
CSLXSIIndexList* Pointer to the newly created index list.

CSLXSIIndexList* GetIndexList (  ) 

Get the index list. May return NULL if it does not exist.

Returns:
CSLXSIIndexList* Pointer to the index list.

SI_Error RemoveIndexList (  ) 

Remove the index list.

Returns:
SI_Error Error code.


The documentation for this class was generated from the following file: