|
| | BT_DECLARE_ALIGNED_ALLOCATOR () |
| |
| | btTriangleIndexVertexArray () |
| |
| virtual | ~btTriangleIndexVertexArray () |
| |
| | btTriangleIndexVertexArray (int numTriangles, int *triangleIndexBase, int triangleIndexStride, int numVertices, btScalar *vertexBase, int vertexStride) |
| |
| void | addIndexedMesh (const btIndexedMesh &mesh, PHY_ScalarType indexType=PHY_INTEGER) |
| |
| virtual void | getLockedVertexIndexBase (unsigned char **vertexbase, int &numverts, PHY_ScalarType &type, int &vertexStride, unsigned char **indexbase, int &indexstride, int &numfaces, PHY_ScalarType &indicestype, int subpart=0) |
| | get read and write access to a subpart of a triangle mesh this subpart has a continuous array of vertices and indices in this way the mesh can be handled as chunks of memory with striding very similar to OpenGL vertexarray support make a call to unLockVertexBase when the read and write access is finished
|
| |
| virtual void | getLockedReadOnlyVertexIndexBase (const unsigned char **vertexbase, int &numverts, PHY_ScalarType &type, int &vertexStride, const unsigned char **indexbase, int &indexstride, int &numfaces, PHY_ScalarType &indicestype, int subpart=0) const |
| |
| virtual void | unLockVertexBase (int subpart) |
| | unLockVertexBase finishes the access to a subpart of the triangle mesh make a call to unLockVertexBase when the read and write access (using getLockedVertexIndexBase) is finished
|
| |
| virtual void | unLockReadOnlyVertexBase (int subpart) const |
| |
| virtual int | getNumSubParts () const |
| | getNumSubParts returns the number of separate subparts each subpart has a continuous array of vertices and indices
|
| |
| IndexedMeshArray & | getIndexedMeshArray () |
| |
| const IndexedMeshArray & | getIndexedMeshArray () const |
| |
| virtual void | preallocateVertices (int numverts) |
| |
| virtual void | preallocateIndices (int numindices) |
| |
| virtual bool | hasPremadeAabb () const |
| |
| virtual void | setPremadeAabb (const btVector3 &aabbMin, const btVector3 &aabbMax) const |
| |
| virtual void | getPremadeAabb (btVector3 *aabbMin, btVector3 *aabbMax) const |
| |
| | BT_DECLARE_ALIGNED_ALLOCATOR () |
| |
| | btStridingMeshInterface () |
| |
| virtual | ~btStridingMeshInterface () |
| |
| virtual void | InternalProcessAllTriangles (btInternalTriangleIndexCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const |
| |
| void | calculateAabbBruteForce (btVector3 &aabbMin, btVector3 &aabbMax) |
| | brute force method to calculate aabb
|
| |
| virtual void | getLockedVertexIndexBase (unsigned char **vertexbase, int &numverts, PHY_ScalarType &type, int &stride, unsigned char **indexbase, int &indexstride, int &numfaces, PHY_ScalarType &indicestype, int subpart=0)=0 |
| | get read and write access to a subpart of a triangle mesh this subpart has a continuous array of vertices and indices in this way the mesh can be handled as chunks of memory with striding very similar to OpenGL vertexarray support make a call to unLockVertexBase when the read and write access is finished
|
| |
| virtual void | 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=0) const =0 |
| |
| virtual void | unLockVertexBase (int subpart)=0 |
| | unLockVertexBase finishes the access to a subpart of the triangle mesh make a call to unLockVertexBase when the read and write access (using getLockedVertexIndexBase) is finished
|
| |
| virtual void | unLockReadOnlyVertexBase (int subpart) const =0 |
| |
| virtual int | getNumSubParts () const =0 |
| | getNumSubParts returns the number of separate subparts each subpart has a continuous array of vertices and indices
|
| |
| virtual void | preallocateVertices (int numverts)=0 |
| |
| virtual void | preallocateIndices (int numindices)=0 |
| |
| virtual bool | hasPremadeAabb () const |
| |
| virtual void | setPremadeAabb (const btVector3 &aabbMin, const btVector3 &aabbMax) const |
| |
| virtual void | getPremadeAabb (btVector3 *aabbMin, btVector3 *aabbMax) const |
| |
| const btVector3 & | getScaling () const |
| |
| void | setScaling (const btVector3 &scaling) |
| |
| virtual int | calculateSerializeBufferSize () const |
| |
| virtual const char * | serialize (void *dataBuffer, btSerializer *serializer) const |
| | fills the dataBuffer and returns the struct name (and 0 on failure)
|
| |
The btTriangleIndexVertexArray allows to access multiple triangle meshes, by indexing into existing triangle/index arrays.
Additional meshes can be added using addIndexedMesh No duplicate is made of the vertex/index data, it only indexes into external vertex/index arrays. So keep those arrays around during the lifetime of this btTriangleIndexVertexArray.
Definition at line 65 of file btTriangleIndexVertexArray.h.