|
Blender V5.0
|
Go to the source code of this file.
Classes | |
| struct | btConvexInternalShapeData |
| do not change those serialization structures, it requires an updated sBulletDNAstr/sBulletDNAstr64 More... | |
| class | btConvexInternalAabbCachingShape |
| btConvexInternalAabbCachingShape adds local aabb caching for convex shapes, to avoid expensive bounding box calculations More... | |
Functions | |
| btConvexInternalShape () | |
| BT_DECLARE_ALIGNED_ALLOCATOR () | |
| virtual | ~btConvexInternalShape () |
| virtual btVector3 | localGetSupportingVertex (const btVector3 &vec) const |
| const btVector3 & | getImplicitShapeDimensions () const |
| void | setImplicitShapeDimensions (const btVector3 &dimensions) |
| void | setSafeMargin (btScalar minDimension, btScalar defaultMarginMultiplier=0.1f) |
| void | setSafeMargin (const btVector3 &halfExtents, btScalar defaultMarginMultiplier=0.1f) |
| 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 | setLocalScaling (const btVector3 &scaling) |
| in case we receive negative scaling | |
| virtual const btVector3 & | getLocalScaling () const |
| const btVector3 & | getLocalScalingNV () const |
| virtual void | setMargin (btScalar margin) |
| virtual btScalar | getMargin () const |
| btScalar | getMarginNV () const |
| virtual int | getNumPreferredPenetrationDirections () const |
| virtual void | getPreferredPenetrationDirection (int index, btVector3 &penetrationVector) 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) | |
Variables | |
| btConvexInternalShape | __pad0__ |
| btVector3 | m_implicitShapeDimensions |
| btScalar | m_collisionMargin |
| btScalar | m_padding |
| BT_DECLARE_ALIGNED_ALLOCATOR | ( | ) |
| btConvexInternalShape::btConvexInternalShape | ( | ) |
Definition at line 18 of file btConvexInternalShape.cpp.
References CONVEX_DISTANCE_MARGIN, m_collisionMargin, and m_localScaling.
Referenced by btCapsuleShape(), btCapsuleShape(), btConeShape(), btConvexInternalAabbCachingShape::btConvexInternalAabbCachingShape(), btCylinderShape(), btMinkowskiSumShape(), btPolyhedralConvexShape(), and btSphereShape().
|
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
getAabb returns the axis aligned bounding box in the coordinate frame of the given transform t.
Definition at line 84 of file btConvexInternalShape.h.
References btTransform, btVector3, and getAabbSlow().
|
virtual |
References btTransform, and btVector3.
Referenced by getAabb().
| const btVector3 & getImplicitShapeDimensions | ( | ) | const |
Definition at line 52 of file btConvexInternalShape.h.
References btVector3, and m_implicitShapeDimensions.
|
virtual |
Definition at line 92 of file btConvexInternalShape.h.
References btVector3, and m_localScaling.
| const btVector3 & getLocalScalingNV | ( | ) | const |
Definition at line 97 of file btConvexInternalShape.h.
References btVector3, and m_localScaling.
|
virtual |
Definition at line 106 of file btConvexInternalShape.h.
References m_collisionMargin.
Referenced by btConvexInternalAabbCachingShape::getAabb(), and setSafeMargin().
| btScalar getMarginNV | ( | ) | const |
Definition at line 111 of file btConvexInternalShape.h.
References m_collisionMargin.
|
virtual |
Definition at line 116 of file btConvexInternalShape.h.
|
virtual |
Definition at line 121 of file btConvexInternalShape.h.
Definition at line 51 of file btBox2dShape.h.
Referenced by btConvexInternalAabbCachingShape::recalcLocalAabb().
|
virtual |
fills the dataBuffer and returns the struct name (and 0 on failure)
| void setImplicitShapeDimensions | ( | const btVector3 & | dimensions | ) |
warning: use setImplicitShapeDimensions with care changing a collision shape while the body is in the world is not recommended, it is best to remove the body from the world, then make the change, and re-add it alternatively flush the contact points, see documentation for 'cleanProxyFromPairs'
Definition at line 61 of file btConvexInternalShape.h.
References btVector3, and m_implicitShapeDimensions.
|
virtual |
in case we receive negative scaling
Definition at line 120 of file btBox2dShape.h.
|
virtual |
Definition at line 102 of file btConvexInternalShape.h.
References m_collisionMargin.
Referenced by setSafeMargin().
Definition at line 66 of file btConvexInternalShape.h.
References getMargin(), and setMargin().
Referenced by btBox2dShape(), btBoxShape(), btCylinderShape(), and setSafeMargin().
Definition at line 74 of file btConvexInternalShape.h.
References btVector3, and setSafeMargin().
|
virtual |
Definition at line 46 of file btConvexInternalShape.h.
| btConvexInternalShape __pad0__ |
The btConvexInternalShape is an internal base class, shared by most convex shape implementations. The btConvexInternalShape uses a default collision margin set to CONVEX_DISTANCE_MARGIN. This collision margin used by Gjk and some other algorithms, see also btCollisionMargin.h Note that when creating small shapes (derived from btConvexInternalShape), you need to make sure to set a smaller collision margin, using the 'setMargin' API There is a automatic mechanism 'setSafeMargin' used by btBoxShape and btCylinderShape
Definition at line 29 of file btConvexInternalShape.h.
| btScalar m_collisionMargin |
Definition at line 37 of file btConvexInternalShape.h.
| btVector3 m_implicitShapeDimensions |
Definition at line 35 of file btConvexInternalShape.h.
Referenced by btBox2dShape(), btBoxShape(), btCapsuleShape(), btCapsuleShapeX::btCapsuleShapeX(), btCapsuleShapeZ::btCapsuleShapeZ(), btCylinderShape(), btSphereShape(), getHalfExtentsWithoutMargin(), getHalfHeight(), getImplicitShapeDimensions(), getRadius(), setConeUpIndex(), setImplicitShapeDimensions(), setLocalScaling(), setMargin(), and setUnscaledRadius().
| btScalar m_padding |
Definition at line 39 of file btConvexInternalShape.h.