Logo Search packages:      
Sourcecode: blender version File versions  Download package

btGImpactCompoundShape Class Reference

#include <btGImpactShape.h>

Inheritance diagram for btGImpactCompoundShape:

btGImpactShapeInterface btConcaveShape btCollisionShape

List of all members.


Detailed Description

btGImpactCompoundShape allows to handle multiple btCollisionShape objects at once

This class only can manage Convex subshapes

Definition at line 298 of file btGImpactShape.h.


Public Member Functions

void addChildShape (btCollisionShape *shape)
 Use this method for adding children. Only Convex shapes are allowed.
void addChildShape (const btTransform &localTransform, btCollisionShape *shape)
 Use this method for adding children. Only Convex shapes are allowed.
 btGImpactCompoundShape (bool children_has_transform=true)
virtual void calculateLocalInertia (btScalar mass, btVector3 &inertia) const
 Calculates the exact inertia tensor for this shape.
void calculateTemporalAabb (const btTransform &curTrans, const btVector3 &linvel, const btVector3 &angvel, btScalar timeStep, btVector3 &temporalAabbMin, btVector3 &temporalAabbMax) const
virtual bool childrenHasTransform () const
 if true, then its children must get transforms.
void getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 If the Bounding box is not updated, then this class attemps to calculate it.
virtual btScalar getAngularMotionDisc () const
 getAngularMotionDisc returns the maximus radius needed for Conservative Advancement to handle time-of-impact with rotations.
virtual void getBoundingSphere (btVector3 &center, btScalar &radius) const
virtual void getBulletTetrahedron (int prim_index, btTetrahedronShapeEx &tetrahedron) const
virtual void getBulletTriangle (int prim_index, btTriangleShapeEx &triangle) const
virtual void getChildAabb (int child_index, const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const
 Retrieves the bound from a child.
virtual const btCollisionShapegetChildShape (int index) const
 Gets the children.
virtual btCollisionShapegetChildShape (int index)
 Gets the children.
virtual btTransform getChildTransform (int index) const
 Gets the children transform.
SIMD_FORCE_INLINE
CompoundPrimitiveManager
getCompoundPrimitiveManager ()
 Obtains the compopund primitive manager.
virtual btScalar getContactBreakingThreshold () const
virtual eGIMPACT_SHAPE_TYPE getGImpactShapeType ()
 Base method for determinig which kind of GIMPACT shape we get.
SIMD_FORCE_INLINE const btAABB & getLocalBox ()
 Obtains the local box, which is the global calculated box of the total of subshapes.
virtual const btVector3 & getLocalScaling () const
virtual btScalar getMargin () const
virtual const char * getName () const
virtual int getNumChildShapes () const
 Gets the number of children.
virtual const
btPrimitiveManagerBase
getPrimitiveManager () const
 Obtains the primitive manager.
virtual int getShapeType () const
void * getUserPointer () const
SIMD_FORCE_INLINE bool isCompound () const
SIMD_FORCE_INLINE bool isConcave () const
SIMD_FORCE_INLINE bool isConvex () const
SIMD_FORCE_INLINE bool isInfinite () const
 isInfinite is used to catch simulation error (aabb check)
SIMD_FORCE_INLINE bool isPolyhedral () const
virtual bool needsRetrieveTetrahedrons () const
 Determines if this shape has tetrahedrons.
virtual bool needsRetrieveTriangles () const
 Determines if this shape has triangles.
virtual void postUpdate ()
 Tells to this object that is needed to refit the box set.
virtual void processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const
 Function for retrieve triangles.
virtual void rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btCollisionWorld::RayResultCallback &resultCallback) const
 virtual method for ray collision
virtual void setChildTransform (int index, const btTransform &transform)
 Sets the children transform.
virtual void setLocalScaling (const btVector3 &scaling)
virtual void setMargin (btScalar margin)
void setUserPointer (void *userPtr)
 optional user data pointer
SIMD_FORCE_INLINE void updateBound ()
 performs refit operation
SIMD_FORCE_INLINE btGImpactBoxSetgetBoxSet ()
 gets boxset
SIMD_FORCE_INLINE void getPrimitiveTriangle (int index, btPrimitiveTriangle &triangle) const
 if this trimesh
SIMD_FORCE_INLINE bool hasBoxSet () const
 Determines if this class has a hierarchy structure for sorting its primitives.
virtual void lockChildShapes () const
 call when reading child shapes
virtual void unlockChildShapes () const

Protected Member Functions

virtual void calcLocalAABB ()
 use this function for perfofm refit in bounding boxes

Protected Attributes

btVector3 localScaling
btGImpactBoxSet m_box_set
btAlignedObjectArray
< btCollisionShape * > 
m_childShapes
btAlignedObjectArray< btTransformm_childTransforms
btScalar m_collisionMargin
btAABB m_localAABB
bool m_needs_update
CompoundPrimitiveManager m_primitive_manager
int m_shapeType
void * m_userPointer

Classes

class  CompoundPrimitiveManager
 compound primitive manager More...

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

Generated by  Doxygen 1.6.0   Back to index