Update of /cvsroot/plib/plib/src/ssg
In directory sc8-pr-cvs1:/tmp/cvs-serv28291
Modified Files:
ssgVTable.cxx
Log Message:
Implemented aux. function "ssgVtxTable::getAs_ssgVtxArray"
Index: ssgVTable.cxx
===================================================================
RCS file: /cvsroot/plib/plib/src/ssg/ssgVTable.cxx,v
retrieving revision 1.17
retrieving revision 1.18
diff -u -d -r1.17 -r1.18
--- ssgVTable.cxx 10 Nov 2002 17:12:13 -0000 1.17
+++ ssgVTable.cxx 13 Dec 2003 22:40:10 -0000 1.18
@@ -559,6 +559,38 @@
}
}
+
+
+ssgVtxArray *ssgVtxTable::getAs_ssgVtxArray()
+{
+
+ ssgIndexArray *indices = new ssgIndexArray ();
+ int i, no = 0;
+ switch ( getPrimitiveType () )
+ {
+ case GL_POLYGON :
+ case GL_TRIANGLE_FAN :
+ case GL_TRIANGLE_STRIP :
+ no = getNumTriangles() + 2 ;
+ break;
+
+ case GL_TRIANGLES :
+ no = getNumTriangles() * 3 ;
+ }
+ for(i=0;i<no;i++)
+ indices ->add(i);
+
+
+ ssgState * state = getState();
+ char * name = getName();
+ ssgVtxArray * s = new ssgVtxArray ( getGLtype(),
+ vertices, normals, texcoords, colours, indices);
+ s->setName(name);
+ s->setState(state);
+ return s;
+}
+
+
void ssgVTable::isect_triangles ( sgSphere *s, sgMat4 m, int test_needed )
{
int nt = getNumTriangles () ;
|