Panda3D

odeBallJoint.h

00001 #ifndef ODEBALLJOINT_H
00002 #define ODEBALLJOINT_H
00003 
00004 #include "pandabase.h"
00005 #include "typedObject.h"
00006 #include "luse.h"
00007 
00008 #include "ode_includes.h"
00009 
00010 #include "odeJoint.h"
00011 
00012 ////////////////////////////////////////////////////////////////////
00013 //       Class : OdeBallJoint
00014 // Description : 
00015 ////////////////////////////////////////////////////////////////////
00016 class EXPCL_PANDAODE OdeBallJoint : public OdeJoint {
00017   friend class OdeJoint;
00018 
00019 private:
00020   OdeBallJoint(dJointID id);
00021 
00022 PUBLISHED:
00023   OdeBallJoint(OdeWorld &world);
00024   OdeBallJoint(OdeWorld &world, OdeJointGroup &joint_group);
00025   virtual ~OdeBallJoint();
00026 
00027   INLINE void set_anchor(dReal x, dReal y, dReal z);
00028   INLINE void set_anchor(const LVecBase3f &anchor);
00029   INLINE void set_anchor2(dReal x, dReal y, dReal z);
00030   INLINE void set_anchor2(const LVecBase3f &anchor);
00031 
00032   INLINE LVecBase3f get_anchor() const;
00033   INLINE LVecBase3f get_anchor2() const;
00034 
00035 public:
00036   static TypeHandle get_class_type() {
00037     return _type_handle;
00038   }
00039   static void init_type() {
00040     OdeJoint::init_type();
00041     register_type(_type_handle, "OdeBallJoint",
00042                   OdeJoint::get_class_type());
00043   }
00044   virtual TypeHandle get_type() const {
00045     return get_class_type();
00046   }
00047   virtual TypeHandle force_init_type() {init_type(); return get_class_type();}
00048 
00049 private:
00050   static TypeHandle _type_handle;
00051 };
00052 
00053 #include "odeBallJoint.I"
00054 
00055 #endif
 All Classes Functions Variables Enumerations