The btUniformScalingShape allows to re-use uniform scaled instances of btConvexShape in a memory efficient way. More...
#include <btUniformScalingShape.h>


Public Member Functions | |
| btUniformScalingShape (btConvexShape *convexChildShape, btScalar uniformScalingFactor) | |
| virtual | ~btUniformScalingShape () |
| virtual btVector3 | localGetSupportingVertexWithoutMargin (const btVector3 &vec) const |
| virtual btVector3 | localGetSupportingVertex (const btVector3 &vec) const |
| virtual void | batchedUnitVectorGetSupportingVertexWithoutMargin (const btVector3 *vectors, btVector3 *supportVerticesOut, int numVectors) const |
| virtual void | calculateLocalInertia (btScalar mass, btVector3 &inertia) const |
| btScalar | getUniformScalingFactor () const |
| btConvexShape * | getChildShape () |
| const btConvexShape * | getChildShape () const |
| virtual const char * | getName () const |
| 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) |
| virtual const btVector3 & | getLocalScaling () const |
| virtual void | setMargin (btScalar margin) |
| virtual btScalar | getMargin () const |
| virtual int | getNumPreferredPenetrationDirections () const |
| virtual void | getPreferredPenetrationDirection (int index, btVector3 &penetrationVector) const |
Private Attributes | |
| btConvexShape * | m_childConvexShape |
| btScalar | m_uniformScalingFactor |
The btUniformScalingShape allows to re-use uniform scaled instances of btConvexShape in a memory efficient way.
Istead of using btUniformScalingShape, it is better to use the non-uniform setLocalScaling method on convex shapes that implement it.
Definition at line 24 of file btUniformScalingShape.h.
| btUniformScalingShape::btUniformScalingShape | ( | btConvexShape * | convexChildShape, | |
| btScalar | uniformScalingFactor | |||
| ) |
Definition at line 18 of file btUniformScalingShape.cpp.
| btUniformScalingShape::~btUniformScalingShape | ( | ) | [virtual] |
Definition at line 25 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::batchedUnitVectorGetSupportingVertexWithoutMargin | ( | const btVector3 * | vectors, | |
| btVector3 * | supportVerticesOut, | |||
| int | numVectors | |||
| ) | const [virtual] |
Implements btConvexShape.
Definition at line 37 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::calculateLocalInertia | ( | btScalar | mass, | |
| btVector3 & | inertia | |||
| ) | const [virtual] |
this linear upscaling is not realistic, but we don't deal with large mass ratios...
Implements btCollisionShape.
Definition at line 56 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::getAabb | ( | const btTransform & | t, | |
| btVector3 & | aabbMin, | |||
| btVector3 & | aabbMax | |||
| ) | const [virtual] |
getAabb's default implementation is brute force, expected derived classes to implement a fast dedicated version
Implements btConvexShape.
Definition at line 67 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::getAabbSlow | ( | const btTransform & | t, | |
| btVector3 & | aabbMin, | |||
| btVector3 & | aabbMax | |||
| ) | const [virtual] |
Implements btConvexShape.
Definition at line 78 of file btUniformScalingShape.cpp.
| const btConvexShape* btUniformScalingShape::getChildShape | ( | ) | const [inline] |
Definition at line 54 of file btUniformScalingShape.h.
| btConvexShape* btUniformScalingShape::getChildShape | ( | ) | [inline] |
Definition at line 49 of file btUniformScalingShape.h.
| const btVector3 & btUniformScalingShape::getLocalScaling | ( | ) | const [virtual] |
Implements btConvexShape.
Definition at line 93 of file btUniformScalingShape.cpp.
| btScalar btUniformScalingShape::getMargin | ( | ) | const [virtual] |
Implements btConvexShape.
Definition at line 102 of file btUniformScalingShape.cpp.
| virtual const char* btUniformScalingShape::getName | ( | ) | const [inline, virtual] |
Implements btCollisionShape.
Definition at line 59 of file btUniformScalingShape.h.
| int btUniformScalingShape::getNumPreferredPenetrationDirections | ( | ) | const [virtual] |
Implements btConvexShape.
Definition at line 107 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::getPreferredPenetrationDirection | ( | int | index, | |
| btVector3 & | penetrationVector | |||
| ) | const [virtual] |
Implements btConvexShape.
Definition at line 112 of file btUniformScalingShape.cpp.
| btScalar btUniformScalingShape::getUniformScalingFactor | ( | ) | const [inline] |
Definition at line 44 of file btUniformScalingShape.h.
Implements btConvexShape.
Definition at line 48 of file btUniformScalingShape.cpp.
| btVector3 btUniformScalingShape::localGetSupportingVertexWithoutMargin | ( | const btVector3 & | vec | ) | const [virtual] |
Implements btConvexShape.
Definition at line 30 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::setLocalScaling | ( | const btVector3 & | scaling | ) | [virtual] |
Implements btConvexShape.
Definition at line 88 of file btUniformScalingShape.cpp.
| void btUniformScalingShape::setMargin | ( | btScalar | margin | ) | [virtual] |
Implements btConvexShape.
Definition at line 98 of file btUniformScalingShape.cpp.
Definition at line 26 of file btUniformScalingShape.h.
Definition at line 28 of file btUniformScalingShape.h.
1.6.1