libmove3d
3.13.0
|
00001 #ifndef LIGHTPLANNER_H 00002 #define LIGHTPLANNER_H 00003 #include "Planner-pkg.h" 00004 #ifdef MULTILOCALPATH 00005 extern void initLightPlannerForMLP(p3d_rob* robot); 00006 #endif 00007 extern void saveTrajInFile(const char* fileName, p3d_traj* traj, int smallIntervals,double dmax); 00008 extern p3d_traj* rrtQuerry(p3d_rob* robot, configPt qs, configPt qg); 00009 extern void optimiseTrajectory(p3d_rob* robot, p3d_traj* traj, int nbSteps, double maxTime); 00010 extern p3d_traj* platformGotoObjectByMat(p3d_rob * robot, p3d_matrix4 objectStartPos, p3d_matrix4 att1, p3d_matrix4 att2); 00011 extern p3d_traj* platformGotoObjectByConf(p3d_rob * robot, p3d_matrix4 objectStartPos, configPt conf); 00012 extern traj* pickObject(p3d_rob* robot, p3d_matrix4 objectStartPos, p3d_matrix4 att1, p3d_matrix4 att2); 00013 extern p3d_traj* gotoObjectByMat(p3d_rob * robot, p3d_matrix4 objectStartPos, p3d_matrix4 att1, p3d_matrix4 att2); 00014 extern p3d_traj* gotoObjectByConf(p3d_rob * robot, p3d_matrix4 objectStartPos, configPt conf, bool biDir); 00015 extern p3d_traj* touchObjectByMat(p3d_rob * robot, p3d_matrix4 objectStartPos, p3d_matrix4 att1, p3d_matrix4 att2); 00016 extern p3d_traj* touchObjectByConf(p3d_rob * robot, p3d_matrix4 objectStartPos, configPt conf); 00017 extern traj* carryObject(p3d_rob* robot, p3d_matrix4 objectGotoPos, p3d_matrix4 att1, p3d_matrix4 att2); 00018 extern p3d_traj* carryObjectByMat(p3d_rob * robot, p3d_matrix4 objectGotoPos, p3d_matrix4 att1, p3d_matrix4 att2); 00019 extern p3d_traj* carryObjectByConf(p3d_rob * robot, p3d_matrix4 objectGotoPos, configPt conf, int cntrtToActivate, int cartesian, bool biDir); 00020 extern p3d_traj* platformCarryObjectByMat(p3d_rob * robot, p3d_matrix4 objectGotoPos, p3d_matrix4 att1, p3d_matrix4 att2); 00021 extern p3d_traj* platformCarryObjectByConf(p3d_rob * robot, p3d_matrix4 objectGotoPos, configPt conf, int cntrtToActivate); 00022 extern void deleteAllGraphs(void); 00023 extern void preComputePlatformGotoObject(p3d_rob * robot, p3d_matrix4 objectStartPos); 00024 extern void preComputeGotoObject(p3d_rob * robot, p3d_matrix4 objectStartPos); 00025 extern void preComputePlatformCarryObject(p3d_rob * robot); 00026 extern void preComputeCarryObject(p3d_rob * robot, p3d_matrix4 att1, p3d_matrix4 att2); 00027 00028 00029 #ifdef GRASP_PLANNING 00030 #include "GraspPlanning-pkg.h" 00031 extern void debugLightPlanner(); 00032 extern p3d_traj* graspTheObject(p3d_rob * robot, p3d_matrix4 objectStartPos, int* whichArm, gpGrasp* curGrasp, bool cartesian); 00033 extern p3d_traj* carryTheObject(p3d_rob * robot, p3d_matrix4 objectGotoPos, gpGrasp grasp, int whichArm, bool cartesian); 00034 #endif 00035 00036 #endif 00037 00038 extern int findBestExchangePosition(p3d_rob *object, p3d_vector3 Oi, p3d_vector3 Of, p3d_vector3 Ai, p3d_vector3 Af, p3d_vector3 Bi, p3d_vector3 Bf, p3d_vector3 result); 00039 extern int findBestExchangePosition2(p3d_rob *object, p3d_matrix4 Oi, p3d_matrix4 Of, p3d_matrix4 Ai, p3d_matrix4 Af, p3d_matrix4 Bi, p3d_matrix4 Bf, p3d_matrix4 result); 00040 #ifdef GRASP_PLANNING 00041 extern int findBestExchangePositionGraphic(p3d_rob *object, p3d_vector3 Oi, p3d_vector3 Of, p3d_vector3 Ai, p3d_vector3 Af, p3d_vector3 Bi, p3d_vector3 Bf, p3d_vector3 result); 00042 #endif