Differential D8762 Diff 28333 extern/bullet2/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
Changeset View
Changeset View
Standalone View
Standalone View
extern/bullet2/src/BulletCollision/CollisionShapes/btMinkowskiSumShape.h
| Show All 11 Lines | |||||
| 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. | 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. | ||||
| 3. This notice may not be removed or altered from any source distribution. | 3. This notice may not be removed or altered from any source distribution. | ||||
| */ | */ | ||||
| #ifndef BT_MINKOWSKI_SUM_SHAPE_H | #ifndef BT_MINKOWSKI_SUM_SHAPE_H | ||||
| #define BT_MINKOWSKI_SUM_SHAPE_H | #define BT_MINKOWSKI_SUM_SHAPE_H | ||||
| #include "btConvexInternalShape.h" | #include "btConvexInternalShape.h" | ||||
| #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h" // for the types | #include "BulletCollision/BroadphaseCollision/btBroadphaseProxy.h" // for the types | ||||
| /// The btMinkowskiSumShape is only for advanced users. This shape represents implicit based minkowski sum of two convex implicit shapes. | /// The btMinkowskiSumShape is only for advanced users. This shape represents implicit based minkowski sum of two convex implicit shapes. | ||||
| ATTRIBUTE_ALIGNED16(class) btMinkowskiSumShape : public btConvexInternalShape | ATTRIBUTE_ALIGNED16(class) | ||||
| btMinkowskiSumShape : public btConvexInternalShape | |||||
| { | { | ||||
| btTransform m_transA; | btTransform m_transA; | ||||
| btTransform m_transB; | btTransform m_transB; | ||||
| const btConvexShape* m_shapeA; | const btConvexShape* m_shapeA; | ||||
| const btConvexShape* m_shapeB; | const btConvexShape* m_shapeB; | ||||
| public: | public: | ||||
| BT_DECLARE_ALIGNED_ALLOCATOR(); | BT_DECLARE_ALIGNED_ALLOCATOR(); | ||||
| btMinkowskiSumShape(const btConvexShape* shapeA,const btConvexShape* shapeB); | btMinkowskiSumShape(const btConvexShape* shapeA, const btConvexShape* shapeB); | ||||
| virtual btVector3 localGetSupportingVertexWithoutMargin(const btVector3& vec)const; | virtual btVector3 localGetSupportingVertexWithoutMargin(const btVector3& vec) const; | ||||
| virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors,btVector3* supportVerticesOut,int numVectors) const; | virtual void batchedUnitVectorGetSupportingVertexWithoutMargin(const btVector3* vectors, btVector3* supportVerticesOut, int numVectors) const; | ||||
| virtual void calculateLocalInertia(btScalar mass,btVector3& inertia) const; | virtual void calculateLocalInertia(btScalar mass, btVector3 & inertia) const; | ||||
| void setTransformA(const btTransform& transA) { m_transA = transA;} | void setTransformA(const btTransform& transA) { m_transA = transA; } | ||||
| void setTransformB(const btTransform& transB) { m_transB = transB;} | void setTransformB(const btTransform& transB) { m_transB = transB; } | ||||
| const btTransform& getTransformA()const { return m_transA;} | const btTransform& getTransformA() const { return m_transA; } | ||||
| const btTransform& GetTransformB()const { return m_transB;} | const btTransform& GetTransformB() const { return m_transB; } | ||||
| virtual btScalar getMargin() const; | virtual btScalar getMargin() const; | ||||
| const btConvexShape* getShapeA() const { return m_shapeA;} | const btConvexShape* getShapeA() const { return m_shapeA; } | ||||
| const btConvexShape* getShapeB() const { return m_shapeB;} | const btConvexShape* getShapeB() const { return m_shapeB; } | ||||
| virtual const char* getName()const | virtual const char* getName() const | ||||
| { | { | ||||
| return "MinkowskiSum"; | return "MinkowskiSum"; | ||||
| } | } | ||||
| }; | }; | ||||
| #endif //BT_MINKOWSKI_SUM_SHAPE_H | #endif //BT_MINKOWSKI_SUM_SHAPE_H | ||||