00001 #ifndef SIGEL_SIMULATION_SIG_DYNALINK_H 00002 #define SIGEL_SIMULATION_SIG_DYNALINK_H 00003 00004 #include <qvector.h> 00005 #include "constraint.h" 00006 #include "ptp.h" 00007 #include "SOLID/solid.h" 00008 #include "SIGEL_Robot/SIG_Link.h" 00009 #include "SIGEL_Robot/SIG_Material.h" 00010 00011 namespace SIGEL_Simulation 00012 { 00013 00021 class SIG_DynaLink { 00022 public: 00023 DL_ptp * collptp; 00024 00026 SIGEL_Robot::SIG_Material * floorMaterial; 00027 00029 SIGEL_Robot::SIG_Link const * link; 00030 00032 int number; 00033 00035 DL_point position; 00036 00038 DL_matrix orientation; 00039 00041 DL_dyna* dyna; 00042 00044 DtShapeRef shape; 00045 00050 SIG_DynaLink(DL_point thePosition, DL_matrix theOrientation); 00051 00056 ~SIG_DynaLink(); 00057 00063 void getNewGeoInfo(DL_geo* g); 00064 00071 void updateDynaCompanion(DL_dyna* d); 00072 00079 void getFirstGeoInfo(DL_geo* g); 00080 00088 void checkInertiaTensor(DL_dyna* d); 00089 }; 00090 00091 } 00092 00093 #endif // SIGEL_SIMULATION_SIG_DYNALINK_H 00094