00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef __BULLET_SOFT_BODY_SHAPE_H__
00016 #define __BULLET_SOFT_BODY_SHAPE_H__
00017
00018 #include "pandabase.h"
00019
00020 #include "bullet_includes.h"
00021 #include "bulletShape.h"
00022
00023 class BulletSoftBodyNode;
00024
00025
00026
00027
00028
00029 class EXPCL_PANDABULLET BulletSoftBodyShape : public BulletShape {
00030
00031 PUBLISHED:
00032 INLINE ~BulletSoftBodyShape();
00033
00034 BulletSoftBodyNode *get_body() const;
00035
00036 public:
00037 BulletSoftBodyShape(btSoftBodyCollisionShape *shapePtr);
00038
00039 virtual btCollisionShape *ptr() const;
00040
00041 private:
00042 btSoftBodyCollisionShape *_shape;
00043
00044
00045 public:
00046 static TypeHandle get_class_type() {
00047 return _type_handle;
00048 }
00049 static void init_type() {
00050 BulletShape::init_type();
00051 register_type(_type_handle, "BulletSoftBodyShape",
00052 BulletShape::get_class_type());
00053 }
00054 virtual TypeHandle get_type() const {
00055 return get_class_type();
00056 }
00057 virtual TypeHandle force_init_type() {
00058 init_type();
00059 return get_class_type();
00060 }
00061
00062 private:
00063 static TypeHandle _type_handle;
00064 };
00065
00066 #include "bulletSoftBodyShape.I"
00067
00068 #endif // __BULLET_SOFT_BODY_SHAPE_H__