Fixed several bugs: python refcounting related and Bullet related (basic add/remove...
[blender.git] / extern / bullet / Bullet / CollisionShapes / TriangleMesh.cpp
1 /*
2  * Copyright (c) 2005 Erwin Coumans http://continuousphysics.com/Bullet/
3  *
4  * Permission to use, copy, modify, distribute and sell this software
5  * and its documentation for any purpose is hereby granted without fee,
6  * provided that the above copyright notice appear in all copies.
7  * Erwin Coumans makes no representations about the suitability 
8  * of this software for any purpose.  
9  * It is provided "as is" without express or implied warranty.
10 */
11 #include "TriangleMesh.h"
12 #include <assert.h>
13
14 static int      myindices[3] = {0,1,2};
15
16 TriangleMesh::TriangleMesh ()
17 {
18
19 }
20
21 void    TriangleMesh::getLockedVertexIndexBase(unsigned char **vertexbase, int& numverts,PHY_ScalarType& type, int& stride,unsigned char **indexbase,int & indexstride,int& numfaces,PHY_ScalarType& indicestype,int subpart)
22 {
23         numverts = 3;
24         *vertexbase = (unsigned char*)&m_triangles[subpart];
25         type = PHY_FLOAT;
26         stride = sizeof(SimdVector3);
27
28
29         numfaces = 1;
30         *indexbase = (unsigned char*) &myindices[0];
31         indicestype = PHY_INTEGER;
32         indexstride = sizeof(int);
33
34 }
35
36 void    TriangleMesh::getLockedReadOnlyVertexIndexBase(const unsigned char **vertexbase, int& numverts,PHY_ScalarType& type, int& stride,const unsigned char **indexbase,int & indexstride,int& numfaces,PHY_ScalarType& indicestype,int subpart) const
37 {
38         numverts = 3;
39         *vertexbase = (unsigned char*)&m_triangles[subpart];
40         type = PHY_FLOAT;
41         stride = sizeof(SimdVector3);
42
43
44         numfaces = 1;
45         *indexbase = (unsigned char*) &myindices[0];
46         indicestype = PHY_INTEGER;
47         indexstride = sizeof(int);
48
49 }
50
51
52
53 int             TriangleMesh::getNumSubParts() const
54 {
55         return m_triangles.size();
56 }