16#ifndef BT_TRIANGLE_INDEX_VERTEX_ARRAY_H
17#define BT_TRIANGLE_INDEX_VERTEX_ARRAY_H
50#ifdef BT_USE_DOUBLE_PRECISION
90 m_indexedMeshes[m_indexedMeshes.
size() - 1].m_indexType = indexType;
107 return (
int)m_indexedMeshes.
size();
112 return m_indexedMeshes;
117 return m_indexedMeshes;
#define BT_DECLARE_ALIGNED_ALLOCATOR()
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
#define ATTRIBUTE_ALIGNED16(a)
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 preallocateVertices(int numverts)=0
virtual void setPremadeAabb(const btVector3 &aabbMin, const btVector3 &aabbMax) const
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
virtual void unLockReadOnlyVertexBase(int subpart) const =0
virtual bool hasPremadeAabb() const
virtual void preallocateIndices(int numindices)=0
virtual void getPremadeAabb(btVector3 *aabbMin, btVector3 *aabbMax) const
virtual void unLockVertexBase(int subpart)=0
virtual int getNumSubParts() const =0
PHY_ScalarType m_vertexType
void addIndexedMesh(const btIndexedMesh &mesh, PHY_ScalarType indexType=PHY_INTEGER)
PHY_ScalarType m_indexType
const unsigned char * m_triangleIndexBase
IndexedMeshArray & getIndexedMeshArray()
btTriangleIndexVertexArray()
int m_triangleIndexStride
btAlignedObjectArray< btIndexedMesh > IndexedMeshArray
const unsigned char * m_vertexBase
btVector3
btVector3 can be used to represent 3D points and vectors. It has an un-used w component to suit 16-by...
SIMD_FORCE_INLINE int size() const
return the number of elements in the array
SIMD_FORCE_INLINE void push_back(const T &_Val)