16#ifndef BT_CONVEX_SHAPE_INTERFACE1
17#define BT_CONVEX_SHAPE_INTERFACE1
27#define MAX_PREFERRED_PENETRATION_DIRECTIONS 10
50 btScalar getMarginNonVirtual()
const;
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
#define ATTRIBUTE_ALIGNED16(a)
The btCollisionShape class provides an interface for collision shapes that can be shared among btColl...
The btConvexShape is an abstract shape interface, implemented by all convex shapes such as btBoxShape...
virtual const btVector3 & getLocalScaling() const =0
virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const =0
virtual void setLocalScaling(const btVector3 &scaling)=0
virtual btVector3 localGetSupportingVertex(const btVector3 &vec) const =0
virtual void setMargin(btScalar margin)=0
virtual int getNumPreferredPenetrationDirections() const =0
virtual btVector3 localGetSupportingVertexWithoutMargin(const btVector3 &vec) const =0
virtual btScalar getMargin() const =0
void getAabb(const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const =0
getAabb's default implementation is brute force, expected derived classes to implement a fast dedicat...
virtual void getAabbSlow(const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const =0
BT_DECLARE_ALIGNED_ALLOCATOR()
virtual void getPreferredPenetrationDirection(int index, btVector3 &penetrationVector) const =0
btVector3 can be used to represent 3D points and vectors.