|
Blender V4.3
|
This class manages a mesh supplied by the btStridingMeshInterface interface. More...
#include <btGImpactShape.h>
Inherits btGImpactShapeInterface.
Public Member Functions | |
| btGImpactMeshShape (btStridingMeshInterface *meshInterface) | |
| virtual | ~btGImpactMeshShape () |
| btStridingMeshInterface * | getMeshInterface () |
| const btStridingMeshInterface * | getMeshInterface () const |
| int | getMeshPartCount () const |
| btGImpactMeshShapePart * | getMeshPart (int index) |
| const btGImpactMeshShapePart * | getMeshPart (int index) const |
| virtual void | setLocalScaling (const btVector3 &scaling) |
| virtual void | setMargin (btScalar margin) |
| virtual void | postUpdate () |
| Tells to this object that is needed to refit all the meshes. | |
| virtual void | calculateLocalInertia (btScalar mass, btVector3 &inertia) const |
| virtual const btPrimitiveManagerBase * | getPrimitiveManager () const |
| Obtains the primitive manager. | |
| virtual int | getNumChildShapes () const |
| Gets the number of children. | |
| virtual bool | childrenHasTransform () const |
| if true, then its children must get transforms. | |
| virtual bool | needsRetrieveTriangles () const |
| Determines if this shape has triangles. | |
| virtual bool | needsRetrieveTetrahedrons () const |
| Determines if this shape has tetrahedrons. | |
| virtual void | getBulletTriangle (int prim_index, btTriangleShapeEx &triangle) const |
| virtual void | getBulletTetrahedron (int prim_index, btTetrahedronShapeEx &tetrahedron) const |
| virtual void | lockChildShapes () const |
| call when reading child shapes | |
| virtual void | unlockChildShapes () const |
| virtual void | getChildAabb (int child_index, const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const |
| Retrieves the bound from a child. | |
| virtual btCollisionShape * | getChildShape (int index) |
| Gets the children. | |
| virtual const btCollisionShape * | getChildShape (int index) const |
| Gets the child. | |
| virtual btTransform | getChildTransform (int index) const |
| Gets the children transform. | |
| virtual void | setChildTransform (int index, const btTransform &transform) |
| Sets the children transform. | |
| virtual eGIMPACT_SHAPE_TYPE | getGImpactShapeType () const |
| Base method for determinig which kind of GIMPACT shape we get. | |
| virtual const char * | getName () const |
| virtual void | rayTest (const btVector3 &rayFrom, const btVector3 &rayTo, btCollisionWorld::RayResultCallback &resultCallback) const |
| virtual method for ray collision | |
| virtual void | processAllTriangles (btTriangleCallback *callback, const btVector3 &aabbMin, const btVector3 &aabbMax) const |
| Function for retrieve triangles. | |
| virtual void | processAllTrianglesRay (btTriangleCallback *callback, const btVector3 &rayFrom, const btVector3 &rayTo) const |
| Function for retrieve triangles. | |
| 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) | |
Public Member Functions inherited from btGImpactShapeInterface | |
| btGImpactShapeInterface () | |
| SIMD_FORCE_INLINE void | updateBound () |
| performs refit operation | |
| void | getAabb (const btTransform &t, btVector3 &aabbMin, btVector3 &aabbMax) const |
| If the Bounding box is not updated, then this class attemps to calculate it. | |
| SIMD_FORCE_INLINE const btAABB & | getLocalBox () |
| Obtains the local box, which is the global calculated box of the total of subshapes. | |
| virtual int | getShapeType () const |
| virtual const btVector3 & | getLocalScaling () const |
| SIMD_FORCE_INLINE const btGImpactBoxSet * | getBoxSet () const |
| gets boxset | |
| SIMD_FORCE_INLINE bool | hasBoxSet () const |
| Determines if this class has a hierarchy structure for sorting its primitives. | |
| SIMD_FORCE_INLINE void | getPrimitiveTriangle (int index, btPrimitiveTriangle &triangle) const |
| if this trimesh | |
Protected Member Functions | |
| void | buildMeshParts (btStridingMeshInterface *meshInterface) |
| virtual void | calcLocalAABB () |
| use this function for perfofm refit in bounding boxes | |
Protected Attributes | |
| btAlignedObjectArray< btGImpactMeshShapePart * > | m_mesh_parts |
Protected Attributes inherited from btGImpactShapeInterface | |
| btAABB | m_localAABB |
| bool | m_needs_update |
| btVector3 | localScaling |
| btGImpactBoxSet | m_box_set |
This class manages a mesh supplied by the btStridingMeshInterface interface.
Set of btGImpactMeshShapePart parts
Definition at line 850 of file btGImpactShape.h.
|
inline |
Definition at line 878 of file btGImpactShape.h.
References buildMeshParts(), and m_meshInterface.
|
inlinevirtual |
Definition at line 884 of file btGImpactShape.h.
References btAlignedObjectArray< T >::clear(), m_mesh_parts, and btAlignedObjectArray< T >::size().
|
inlineprotected |
Definition at line 856 of file btGImpactShape.h.
References m_mesh_parts, and btAlignedObjectArray< T >::push_back().
Referenced by btGImpactMeshShape().
|
inlineprotectedvirtual |
use this function for perfofm refit in bounding boxes
Reimplemented from btGImpactShapeInterface.
Definition at line 866 of file btGImpactShape.h.
References btGImpactShapeInterface::getLocalBox(), btGImpactShapeInterface::m_localAABB, m_mesh_parts, and btAlignedObjectArray< T >::size().
Definition at line 156 of file btGImpactShape.cpp.
References btVector3, btGImpactMeshShapePart::calculateLocalInertia(), getMeshPart(), getMeshPartCount(), and btGImpactShapeInterface::m_localAABB.
|
virtual |
Definition at line 1110 of file btGImpactShape.h.
|
inlinevirtual |
if true, then its children must get transforms.
Implements btGImpactShapeInterface.
Definition at line 978 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Implements btGImpactShapeInterface.
Definition at line 1005 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Implements btGImpactShapeInterface.
Definition at line 998 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Retrieves the bound from a child.
Reimplemented from btGImpactShapeInterface.
Definition at line 1026 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Gets the children.
Implements btGImpactShapeInterface.
Definition at line 1036 of file btGImpactShape.h.
|
inlinevirtual |
Gets the child.
Implements btGImpactShapeInterface.
Definition at line 1044 of file btGImpactShape.h.
|
inlinevirtual |
Gets the children transform.
Implements btGImpactShapeInterface.
Definition at line 1052 of file btGImpactShape.h.
References btAssert, and btTransform.
|
inlinevirtual |
Base method for determinig which kind of GIMPACT shape we get.
Subshape member functions
Implements btGImpactShapeInterface.
Definition at line 1070 of file btGImpactShape.h.
References CONST_GIMPACT_TRIMESH_SHAPE.
Referenced by serialize().
|
inline |
Definition at line 895 of file btGImpactShape.h.
References m_meshInterface.
Referenced by btCreateCompoundFromGimpactShape().
|
inline |
Definition at line 900 of file btGImpactShape.h.
References m_meshInterface.
|
inline |
Definition at line 910 of file btGImpactShape.h.
References m_mesh_parts.
Referenced by calculateLocalInertia(), btGImpactCollisionAlgorithm::gimpact_vs_gimpact(), and btGImpactCollisionAlgorithm::gimpact_vs_shape().
|
inline |
Definition at line 915 of file btGImpactShape.h.
References m_mesh_parts.
|
inline |
Definition at line 905 of file btGImpactShape.h.
References m_mesh_parts, and btAlignedObjectArray< T >::size().
Referenced by calculateLocalInertia(), btGImpactCollisionAlgorithm::gimpact_vs_gimpact(), and btGImpactCollisionAlgorithm::gimpact_vs_shape().
|
inlinevirtual |
Definition at line 1075 of file btGImpactShape.h.
|
inlinevirtual |
Gets the number of children.
Implements btGImpactShapeInterface.
Definition at line 971 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Obtains the primitive manager.
Implements btGImpactShapeInterface.
Definition at line 964 of file btGImpactShape.h.
|
inlinevirtual |
call when reading child shapes
Reimplemented from btGImpactShapeInterface.
Definition at line 1013 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Determines if this shape has tetrahedrons.
Implements btGImpactShapeInterface.
Definition at line 992 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Determines if this shape has triangles.
Implements btGImpactShapeInterface.
Definition at line 985 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Tells to this object that is needed to refit all the meshes.
Reimplemented from btGImpactShapeInterface.
Definition at line 949 of file btGImpactShape.h.
References m_mesh_parts, btGImpactShapeInterface::m_needs_update, and btAlignedObjectArray< T >::size().
|
virtual |
Function for retrieve triangles.
It gives the triangles in local space
Reimplemented from btGImpactShapeInterface.
Definition at line 245 of file btGImpactShape.cpp.
References callback, m_mesh_parts, and btAlignedObjectArray< T >::size().
|
virtual |
Function for retrieve triangles.
It gives the triangles in local space
Reimplemented from btGImpactShapeInterface.
Definition at line 254 of file btGImpactShape.cpp.
References callback, m_mesh_parts, and btAlignedObjectArray< T >::size().
Referenced by MyInternalTriangleIndexCallback::internalProcessTriangleIndex().
|
virtual |
virtual method for ray collision
Reimplemented from btGImpactShapeInterface.
Definition at line 188 of file btGImpactShape.cpp.
|
virtual |
fills the dataBuffer and returns the struct name (and 0 on failure)
Definition at line 264 of file btGImpactShape.cpp.
References float, getGImpactShapeType(), int, btGImpactShapeInterface::localScaling, btGImpactMeshShapeData::m_collisionMargin, m_collisionMargin, btGImpactMeshShapeData::m_collisionShapeData, btGImpactMeshShapeData::m_gimpactSubType, btGImpactMeshShapeData::m_localScaling, and btGImpactMeshShapeData::m_meshInterface.
|
inlinevirtual |
Sets the children transform.
Implements btGImpactShapeInterface.
Definition at line 1063 of file btGImpactShape.h.
References btAssert.
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 920 of file btGImpactShape.h.
References btGImpactShapeInterface::localScaling, m_mesh_parts, btGImpactShapeInterface::m_needs_update, and btAlignedObjectArray< T >::size().
Referenced by btCollisionWorldImporter::convertCollisionShape().
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 934 of file btGImpactShape.h.
References m_collisionMargin, m_mesh_parts, btGImpactShapeInterface::m_needs_update, and btAlignedObjectArray< T >::size().
Referenced by btCollisionWorldImporter::convertCollisionShape().
|
inlinevirtual |
Reimplemented from btGImpactShapeInterface.
Definition at line 1018 of file btGImpactShape.h.
References btAssert.
|
protected |
Definition at line 855 of file btGImpactShape.h.
Referenced by buildMeshParts(), calcLocalAABB(), getMeshPart(), getMeshPart(), getMeshPartCount(), postUpdate(), processAllTriangles(), processAllTrianglesRay(), setLocalScaling(), setMargin(), and ~btGImpactMeshShape().