xsi_trianglevertex.h
Go to the documentation of this file.
00001 //*****************************************************************************
00011 //*****************************************************************************
00012 
00013 #if (_MSC_VER > 1000) || defined(SGI_COMPILER)
00014 #pragma once
00015 #endif
00016 
00017 #ifndef __XSITRIANGLEVERTEX_H__
00018 #define __XSITRIANGLEVERTEX_H__
00019 
00020 #include <xsi_siobject.h>
00021 #include <xsi_math.h>
00022 #include <xsi_uv.h>
00023 #include <xsi_vertexcolor.h>
00024 
00025 namespace XSI {
00026 
00027 //*****************************************************************************
00056 //*****************************************************************************
00057 
00058 class SICPPSDKDECL TriangleVertex : public SIObject
00059 {
00060 public:
00062     TriangleVertex();
00063 
00065     ~TriangleVertex();
00066 
00070     TriangleVertex(const CRef& in_ref);
00071 
00075     TriangleVertex(const TriangleVertex& in_obj);
00076 
00081     bool IsA( siClassID in_ClassID) const;
00082 
00086     siClassID GetClassID() const;
00087 
00093     TriangleVertex& operator=(const TriangleVertex& in_obj);
00094 
00100     TriangleVertex& operator=(const CRef& in_ref);
00101 
00105     MATH::CVector3 GetPosition() const;
00106 
00111     MATH::CVector3 GetNormal() const;
00112 
00116     CVertexColor GetColor() const;
00117 
00121     CUV GetUV() const;
00122 
00126     LONG GetIndex() const;
00127 
00128     private:
00129     TriangleVertex * operator&() const;
00130     TriangleVertex * operator&();
00131 };
00132 
00133 //*****************************************************************************
00170 //*****************************************************************************
00171 class SICPPSDKDECL CTriangleVertexRefArray : public CRefArray
00172 {
00173     public:
00174     CTriangleVertexRefArray();
00175 
00179     CTriangleVertexRefArray( const CTriangleVertexRefArray& in_array );
00180 
00185     CRef GetItem( LONG in_index ) const;
00186 
00191     CRef GetItem( const CString& in_name ) const;
00192 
00196     LONG GetCount() const;
00197 
00201     bool IsValid() const;
00202 
00207     MATH::CVector3Array GetPositionArray() const;
00208 
00213     MATH::CVector3Array GetNormalArray() const;
00214 
00219     CVertexColorArray GetColorArray() const;
00220 
00225     CUVArray GetUVArray() const;
00226 
00227     private:
00228     void* m_ptr;
00229 };
00230 
00231 };
00232 
00233 #endif // __XSITRIANGLEVERTEX_H__