58 btVector3 extent = localHalfExtents.
dot3(abs_b[0], abs_b[1], abs_b[2]);
59 aabbMin = center - extent;
60 aabbMax = center + extent;
100 for (
int i=0;i<3;i++)
153 :m_callback(callback),
159 virtual void internalProcessTriangleIndex(
btVector3* triangle,
int partId,
int triangleIndex)
164 m_callback->processTriangle(triangle,partId,triangleIndex);
171 FilteredCallback filterCallback(callback,aabbMin,aabbMax);
204 return supportVertex;
btVector3 m_supportVecLocal
virtual void getAabb(const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t...
SupportVertexCallback(const btVector3 &supportVecWorld, const btTransform &trans)
void setValue(const btScalar &_x, const btScalar &_y, const btScalar &_z)
btStridingMeshInterface * m_meshInterface
btScalar m_collisionMargin
virtual void calculateLocalInertia(btScalar mass, btVector3 &inertia) const
const btVector3 & getScaling() const
virtual void getPremadeAabb(btVector3 *aabbMin, btVector3 *aabbMax) const
void setScaling(const btVector3 &scaling)
btTriangleMeshShape(btStridingMeshInterface *meshInterface)
btTriangleMeshShape constructor has been disabled/protected, so that users will not mistakenly use th...
btScalar dot(const btVector3 &v) const
Return the dot product.
btVector3 m_supportVertexLocal
virtual btVector3 localGetSupportingVertex(const btVector3 &vec) const
btMatrix3x3 absolute() const
Return the matrix with all values non negative.
The btTriangleCallback provides a callback for each overlapping triangle when calling processAllTrian...
virtual bool hasPremadeAabb() const
virtual void processTriangle(btVector3 *triangle, int partId, int triangleIndex)
virtual void setLocalScaling(const btVector3 &scaling)
btVector3 can be used to represent 3D points and vectors.
virtual void processAllTriangles(btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const
btVector3 GetSupportVertexLocal()
btVector3 GetSupportVertexWorldSpace()
The btStridingMeshInterface is the interface class for high performance generic access to triangle me...
The btConcaveShape class provides an interface for non-moving (static) concave shapes.
btVector3 dot3(const btVector3 &v0, const btVector3 &v1, const btVector3 &v2) const
The btMatrix3x3 class implements a 3x3 rotation matrix, to perform linear algebra in combination with...
btScalar dot(const btQuaternion &q1, const btQuaternion &q2)
Calculate the dot product between two quaternions.
virtual btScalar getMargin() const
virtual ~btTriangleMeshShape()
virtual const btVector3 & getLocalScaling() const
bool TestTriangleAgainstAabb2(const btVector3 *vertices, const btVector3 &aabbMin, const btVector3 &aabbMax)
conservative test for overlap between triangle and aabb
float btScalar
The btScalar type abstracts floating point numbers, to easily switch between double and single floati...
virtual void InternalProcessAllTriangles(btInternalTriangleIndexCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const