Bullet Collision Detection & Physics Library
|
This class manages a sub part of a mesh supplied by the btStridingMeshInterface interface. More...
#include <btGImpactShape.h>
Classes | |
class | TrimeshPrimitiveManager |
Trimesh primitive manager. More... | |
Public Member Functions | |
btGImpactMeshShapePart () | |
btGImpactMeshShapePart (btStridingMeshInterface *meshInterface, int part) | |
virtual | ~btGImpactMeshShapePart () |
virtual bool | childrenHasTransform () const |
if true, then its children must get transforms. More... | |
virtual void | lockChildShapes () const |
call when reading child shapes More... | |
virtual void | unlockChildShapes () const |
virtual int | getNumChildShapes () const |
Gets the number of children. More... | |
virtual btCollisionShape * | getChildShape (int index) |
Gets the children. More... | |
virtual const btCollisionShape * | getChildShape (int index) const |
Gets the child. More... | |
virtual btTransform | getChildTransform (int index) const |
Gets the children transform. More... | |
virtual void | setChildTransform (int index, const btTransform &transform) |
Sets the children transform. More... | |
virtual const btPrimitiveManagerBase * | getPrimitiveManager () const |
Obtains the primitive manager. More... | |
TrimeshPrimitiveManager * | getTrimeshPrimitiveManager () |
virtual void | calculateLocalInertia (btScalar mass, btVector3 &inertia) const |
virtual const char * | getName () const |
virtual eGIMPACT_SHAPE_TYPE | getGImpactShapeType () const |
Subshape member functions. More... | |
virtual bool | needsRetrieveTriangles () const |
Determines if this shape has triangles. More... | |
virtual bool | needsRetrieveTetrahedrons () const |
Determines if this shape has tetrahedrons. More... | |
virtual void | getBulletTriangle (int prim_index, btTriangleShapeEx &triangle) const |
virtual void | getBulletTetrahedron (int prim_index, btTetrahedronShapeEx &tetrahedron) const |
int | getVertexCount () const |
void | getVertex (int vertex_index, btVector3 &vertex) const |
void | setMargin (btScalar margin) |
btScalar | getMargin () const |
virtual void | setLocalScaling (const btVector3 &scaling) |
virtual const btVector3 & | getLocalScaling () const |
int | getPart () const |
virtual void | processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const |
Function for retrieve triangles. More... | |
virtual void | processAllTrianglesRay (btTriangleCallback *callback, const btVector3 &rayFrom, const btVector3 &rayTo) const |
Function for retrieve triangles. More... | |
Public Member Functions inherited from btGImpactShapeInterface | |
btGImpactShapeInterface () | |
void | updateBound () |
performs refit operation More... | |
void | getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const |
If the Bounding box is not updated, then this class attemps to calculate it. More... | |
virtual void | postUpdate () |
Tells to this object that is needed to refit the box set. More... | |
const btAABB & | getLocalBox () |
Obtains the local box, which is the global calculated box of the total of subshapes. More... | |
virtual int | getShapeType () const |
virtual void | setLocalScaling (const btVector3 &scaling) |
virtual const btVector3 & | getLocalScaling () const |
virtual void | setMargin (btScalar margin) |
virtual void | rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btCollisionWorld::RayResultCallback &resultCallback) const |
virtual method for ray collision More... | |
virtual void | processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const |
Function for retrieve triangles. More... | |
virtual void | processAllTrianglesRay (btTriangleCallback *, const btVector3 &, const btVector3 &) const |
Function for retrieve triangles. More... | |
const btGImpactBoxSet * | getBoxSet () const |
gets boxset More... | |
bool | hasBoxSet () const |
Determines if this class has a hierarchy structure for sorting its primitives. More... | |
void | getPrimitiveTriangle (int index, btPrimitiveTriangle &triangle) const |
if this trimesh More... | |
virtual void | getChildAabb (int child_index, const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const |
Retrieves the bound from a child. More... | |
Public Member Functions inherited from btConcaveShape | |
BT_DECLARE_ALIGNED_ALLOCATOR () | |
btConcaveShape () | |
virtual | ~btConcaveShape () |
virtual void | processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const =0 |
virtual btScalar | getMargin () const |
virtual void | setMargin (btScalar collisionMargin) |
Public Member Functions inherited from btCollisionShape | |
BT_DECLARE_ALIGNED_ALLOCATOR () | |
btCollisionShape () | |
virtual | ~btCollisionShape () |
virtual void | getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const =0 |
getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t. More... | |
virtual void | getBoundingSphere (btVector3 ¢er, btScalar &radius) const |
virtual btScalar | getAngularMotionDisc () const |
getAngularMotionDisc returns the maximum radius needed for Conservative Advancement to handle time-of-impact with rotations. More... | |
virtual btScalar | getContactBreakingThreshold (btScalar defaultContactThresholdFactor) const |
void | calculateTemporalAabb (const btTransform &curTrans, const btVector3 &linvel, const btVector3 &angvel, btScalar timeStep, btVector3 &temporalAabbMin, btVector3 &temporalAabbMax) const |
calculateTemporalAabb calculates the enclosing aabb for the moving object over interval [0..timeStep) result is conservative More... | |
bool | isPolyhedral () const |
bool | isConvex2d () const |
bool | isConvex () const |
bool | isNonMoving () const |
bool | isConcave () const |
bool | isCompound () const |
bool | isSoftBody () const |
bool | isInfinite () const |
isInfinite is used to catch simulation error (aabb check) More... | |
virtual void | setLocalScaling (const btVector3 &scaling)=0 |
virtual const btVector3 & | getLocalScaling () const =0 |
virtual void | calculateLocalInertia (btScalar mass, btVector3 &inertia) const =0 |
virtual const char * | getName () const =0 |
int | getShapeType () const |
virtual btVector3 | getAnisotropicRollingFrictionDirection () const |
the getAnisotropicRollingFrictionDirection can be used in combination with setAnisotropicFriction See Bullet/Demos/RollingFrictionDemo for an example More... | |
virtual void | setMargin (btScalar margin)=0 |
virtual btScalar | getMargin () const =0 |
void | setUserPointer (void *userPtr) |
optional user data pointer More... | |
void * | getUserPointer () const |
void | setUserIndex (int index) |
int | getUserIndex () const |
void | setUserIndex2 (int index) |
int | getUserIndex2 () const |
virtual int | calculateSerializeBufferSize () const |
virtual const char * | serialize (void *dataBuffer, btSerializer *serializer) const |
fills the dataBuffer and returns the struct name (and 0 on failure) More... | |
virtual void | serializeSingleShape (btSerializer *serializer) const |
Protected Attributes | |
TrimeshPrimitiveManager | m_primitive_manager |
Protected Attributes inherited from btGImpactShapeInterface | |
btAABB | m_localAABB |
bool | m_needs_update |
btVector3 | localScaling |
btGImpactBoxSet | m_box_set |
Protected Attributes inherited from btConcaveShape | |
btScalar | m_collisionMargin |
Protected Attributes inherited from btCollisionShape | |
int | m_shapeType |
void * | m_userPointer |
int | m_userIndex |
int | m_userIndex2 |
Additional Inherited Members | |
Protected Member Functions inherited from btGImpactShapeInterface | |
virtual void | calcLocalAABB () |
use this function for perfofm refit in bounding boxes use this function for perfofm refit in bounding boxes More... | |
This class manages a sub part of a mesh supplied by the btStridingMeshInterface interface.
Definition at line 502 of file btGImpactShape.h.
|
inline |
Definition at line 695 of file btGImpactShape.h.
btGImpactMeshShapePart::btGImpactMeshShapePart | ( | btStridingMeshInterface * | meshInterface, |
int | part | ||
) |
Definition at line 24 of file btGImpactShape.cpp.
|
virtual |
Definition at line 46 of file btGImpactShape.cpp.
|
virtual |
Implements btCollisionShape.
Definition at line 119 of file btGImpactShape.cpp.
|
inlinevirtual |
if true, then its children must get transforms.
Implements btGImpactShapeInterface.
Definition at line 704 of file btGImpactShape.h.
|
inlinevirtual |
Implements btGImpactShapeInterface.
Definition at line 794 of file btGImpactShape.h.
|
inlinevirtual |
Implements btGImpactShapeInterface.
Definition at line 789 of file btGImpactShape.h.
|
inlinevirtual |
Gets the children.
Implements btGImpactShapeInterface.
Definition at line 720 of file btGImpactShape.h.
|
inlinevirtual |
Gets the child.
Implements btGImpactShapeInterface.
Definition at line 728 of file btGImpactShape.h.
|
inlinevirtual |
Gets the children transform.
Implements btGImpactShapeInterface.
Definition at line 736 of file btGImpactShape.h.
|
inlinevirtual |
Subshape member functions.
Base method for determinig which kind of GIMPACT shape we get
Implements btGImpactShapeInterface.
Definition at line 772 of file btGImpactShape.h.
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 828 of file btGImpactShape.h.
|
inlinevirtual |
Reimplemented from btConcaveShape.
Definition at line 817 of file btGImpactShape.h.
|
inlinevirtual |
Implements btCollisionShape.
Definition at line 767 of file btGImpactShape.h.
|
inlinevirtual |
Gets the number of children.
Implements btGImpactShapeInterface.
Definition at line 714 of file btGImpactShape.h.
|
inline |
Definition at line 833 of file btGImpactShape.h.
|
inlinevirtual |
Obtains the primitive manager.
Implements btGImpactShapeInterface.
Definition at line 755 of file btGImpactShape.h.
|
inline |
Definition at line 760 of file btGImpactShape.h.
|
inline |
Definition at line 806 of file btGImpactShape.h.
|
inline |
Definition at line 801 of file btGImpactShape.h.
|
virtual |
call when reading child shapes
Reimplemented from btGImpactShapeInterface.
Definition at line 54 of file btGImpactShape.cpp.
|
inlinevirtual |
Determines if this shape has tetrahedrons.
Implements btGImpactShapeInterface.
Definition at line 784 of file btGImpactShape.h.
|
inlinevirtual |
Determines if this shape has triangles.
Implements btGImpactShapeInterface.
Definition at line 778 of file btGImpactShape.h.
|
virtual |
Function for retrieve triangles.
It gives the triangles in local space
Reimplemented from btGImpactShapeInterface.
Definition at line 218 of file btGImpactShape.cpp.
|
virtual |
Function for retrieve triangles.
It gives the triangles in local space
Reimplemented from btGImpactShapeInterface.
Definition at line 192 of file btGImpactShape.cpp.
|
inlinevirtual |
Sets the children transform.
Implements btGImpactShapeInterface.
Definition at line 747 of file btGImpactShape.h.
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 822 of file btGImpactShape.h.
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 811 of file btGImpactShape.h.
|
virtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 65 of file btGImpactShape.cpp.
|
protected |
Definition at line 692 of file btGImpactShape.h.