Bullet Collision Detection & Physics Library
|
Go to the documentation of this file.
16 #ifndef BT_POLYHEDRAL_CONVEX_SHAPE_H
17 #define BT_POLYHEDRAL_CONVEX_SHAPE_H
39 virtual bool initializePolyhedralFeatures(
int shiftVerticesByMargin = 0);
51 virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(
const btVector3* vectors,
btVector3* supportVerticesOut,
int numVectors)
const;
55 virtual int getNumVertices()
const = 0;
56 virtual int getNumEdges()
const = 0;
58 virtual void getVertex(
int i,
btVector3& vtx)
const = 0;
59 virtual int getNumPlanes()
const = 0;
60 virtual void getPlane(
btVector3 & planeNormal,
btVector3 & planeSupport,
int i)
const = 0;
106 #endif //BT_POLYHEDRAL_CONVEX_SHAPE_H
The btPolyhedralConvexShape is an internal interface class for polyhedral convex shapes.
void getNonvirtualAabb(const btTransform &trans, btVector3 &aabbMin, btVector3 &aabbMax, btScalar margin) const
The btConvexInternalShape is an internal base class, shared by most convex shape implementations.
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
void setCachedLocalAabb(const btVector3 &aabbMin, const btVector3 &aabbMax)
The btPolyhedralConvexAabbCachingShape adds aabb caching to the btPolyhedralConvexShape.
#define BT_DECLARE_ALIGNED_ALLOCATOR()
btVector3 can be used to represent 3D points and vectors.
#define ATTRIBUTE_ALIGNED16(a)
void getCachedLocalAabb(btVector3 &aabbMin, btVector3 &aabbMax) const
void btTransformAabb(const btVector3 &halfExtents, btScalar margin, const btTransform &t, btVector3 &aabbMinOut, btVector3 &aabbMaxOut)
btConvexPolyhedron * m_polyhedron
virtual void getAabb(const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
getAabb's default implementation is brute force, expected derived classes to implement a fast dedicat...
virtual void setLocalScaling(const btVector3 &scaling)
btPolyhedralConvexAabbCachingShape()
const btConvexPolyhedron * getConvexPolyhedron() const