Logo Search packages:      
Sourcecode: blender version File versions

btConvexTriangleMeshShape Class Reference

#include <btConvexTriangleMeshShape.h>

Inheritance diagram for btConvexTriangleMeshShape:

btPolyhedralConvexShape btConvexInternalShape

List of all members.

Detailed Description

The btConvexTriangleMeshShape is a convex hull of a triangle mesh, but the performance is not as good as btConvexHullShape. A small benefit of this class is that it uses the btStridingMeshInterface, so you can avoid the duplication of the triangle mesh data. Nevertheless, most users should use the much better performing btConvexHullShape instead.

Definition at line 11 of file btConvexTriangleMeshShape.h.

Public Member Functions

virtual void batchedUnitVectorGetSupportingVertexWithoutMargin (const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const
 btConvexTriangleMeshShape (btStridingMeshInterface *meshInterface, bool calcAabb=true)
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const
void calculatePrincipalAxisTransform (btTransform &principal, btVector3 &inertia, btScalar &volume) const
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 dedicated version
virtual void getAabbSlow (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
virtual void getEdge (int i, btPoint3 &pa, btPoint3 &pb) const
const btVector3getImplicitShapeDimensions () const
virtual const btVector3getLocalScaling () const
const btVector3getLocalScalingNV () const
virtual btScalar getMargin () const
btScalar getMarginNV () const
class btStridingMeshInterfacegetMeshInterface () const
class btStridingMeshInterfacegetMeshInterface ()
virtual const char * getName () const
void getNonvirtualAabb (const btTransform &trans, btVector3 &aabbMin, btVector3 &aabbMax, btScalar margin) const
virtual int getNumEdges () const
virtual int getNumPlanes () const
virtual int getNumPreferredPenetrationDirections () const
virtual int getNumVertices () const
virtual void getPlane (btVector3 &planeNormal, btPoint3 &planeSupport, int i) const
virtual void getPreferredPenetrationDirection (int index, btVector3 &penetrationVector) const
virtual int getShapeType () const
virtual void getVertex (int i, btPoint3 &vtx) const
virtual bool isInside (const btPoint3 &pt, btScalar tolerance) const
virtual btVector3 localGetSupportingVertex (const btVector3 &vec) const
virtual btVector3 localGetSupportingVertexWithoutMargin (const btVector3 &vec) const
void recalcLocalAabb ()
virtual void setLocalScaling (const btVector3 &scaling)
virtual void setMargin (btScalar margin)

Public Attributes

class Hull * m_optionalHull
 optional Hull is for optional Separating Axis Test Hull collision detection, see Hull.cpp

Protected Attributes

btScalar m_collisionMargin
btVector3 m_implicitShapeDimensions
bool m_isLocalAabbValid
btVector3 m_localAabbMax
btVector3 m_localAabbMin
btVector3 m_localScaling
btScalar m_padding

Private Attributes

class btStridingMeshInterfacem_stridingMesh

The documentation for this class was generated from the following files:

Generated by  Doxygen 1.6.0   Back to index