libmove3d
3.13.0
|
00001 #ifndef _RS_DEF_H 00002 #define _RS_DEF_H 00003 00004 /*#include "p3d_sys.h" */ 00005 00006 #define EPS1 0.1 00007 #define EPS2 0.01 00008 #define EPS3 0.001 00009 #define EPS4 0.0001 00010 #define EPS5 0.00001 00011 #define EPS6 0.000001 00012 00013 #define EPSILON 1e-10 00014 00015 #define infini 10000000. 00016 00017 #define RS_ALL 0 00018 #define RS_NO_CUSP -1 00019 #define RS_WITH_CUSP -2 00020 #define RS_DUBINS -3 00021 00022 00023 /*******************************************************************/ 00024 00025 typedef struct Stconfig{ 00026 double x; 00027 double y; 00028 double z; 00029 struct Stconfig *suiv; 00030 } Stconfig , *pStconfig; 00031 00032 /******************************************************************* 00033 CETTE STRUCTURE SERT A DEFINIR LA COURBE MIN PAR REED&SHEPP 00034 QUI EST DU TYPE C C S C C ||. UN ELEMENT DU TYPE Stcourbe SERA 00035 SOIT UN C SOIT UN S. 00036 ON AURA DONC AU MAX UNE LISTE DE 5 element Stcourbe 00037 ******************************************************************/ 00038 typedef struct Stcourbe{ 00039 int type; /* type = 1/2/3 pour droite/gauche/segment */ 00040 Stconfig cd; /* config init sur la courbe */ 00041 Stconfig cf; /* config fin sur la courbe */ 00042 double centre_x; /* centre du cercle correspondant */ 00043 double centre_y; /* en x et y si c'est le cas (sinon 0) */ 00044 double r; /* rayon du disque */ 00045 int sens; /* sens = 1/-1 pour avant/arriere */ 00046 double val; /* valeur de la portion de courbe */ 00047 struct Stcourbe *suiv; /* pointeur sur portion suivante */ 00048 struct Stcourbe *prec; /* pointeur sur portion precedente */ 00049 int valid; /* generalement TRUE quand pas de collision 00050 de la portion de trajectoire... NULL si 00051 la subdivision dans p2d_holo a ete stoppee pour 00052 eviter un decoupage en portions minuscules */ 00053 } Stcourbe , *pStcourbe; 00054 00055 /* #include "rs_proto.h" */ 00056 /* #include "../localpath/proto/rs_dist_proto.h" */ 00057 /* #include "../localpath/proto/rs_curve_proto.h" */ 00058 /* #include "rs_inter_proto.h" */ 00059 /* #include "rs_interbm_proto.h" */ 00060 /* #include "rs_holo_proto.h" */ 00061 /* #include "rs_optim_proto.h" */ 00062 /* #include "p2d_rs_proto.h" */ 00063 #endif