-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathgl_const.h
executable file
·134 lines (113 loc) · 4.8 KB
/
gl_const.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
#ifndef GL_CONST_H
#define GL_CONST_H
#define CN_PI_CONSTANT 3.14159265359
#define CN_SQRT2_CONSTANT 1.41421356237
#define CN_EPSILON 1e-8
#define CN_LOG "_log"
//Parametrs Type
#define CN_PT_LOGLVL 0 // log level
#define CN_PT_AL 1 // anglelimit
#define CN_PT_D 2 // distance
#define CN_PT_W 3 // weight
#define CN_PT_SL 4 // steplimit
#define CN_PT_CHW 5 // curvature heuristic weight
#define CN_PT_DDF 6 // coefficient to decrease distance
#define CN_PT_DM 7 // distancemin
#define CN_PT_PC 8 // pivot circle value
#define CN_PT_NOP 9 // number of parents to increase radius
#define CN_PT_PS 10 // post smoother
#define CN_PT_NUM 11 // number of parameters
//Default values of parameters
#define CN_PTD_AL 30
#define CN_PTD_D 4
#define CN_PTD_W 2
#define CN_PTD_SL 20000 // Maximum number of steps, after this number the path is considered nonexistent
#define CN_PTD_LR 1
#define CN_PTD_DDF 1 // Value that divides distance in order to decrease radius of the step
#define CN_PTD_DMIN 3 // Radius minimum
#define CN_PTD_NOFPTOINCRAD 2 // Number of parent vertecies that must have the same radius in order to start the increase of current radius
//Obstacle
#define CN_OBSTL 1
//loglevel
#define CN_LOGLVL_NO 0
#define CN_LOGLVL_TINY 0.5
#define CN_LOGLVL_HIGH 1
#define CN_LOGLVL_MED 1.5
#define CN_LOGLVL_LOW 2
#define CN_LOGLVL_ITER 1.2
/*
* XML file tags ---------------------------------------------------------------
*/
#define CNS_TAG_ROOT "root"
#define CNS_TAG_ALGORITHM "algorithm"
#define CNS_TAG_MAP "map"
#define CNS_TAG_HEIGHT "height"
#define CNS_TAG_WIDTH "width"
#define CNS_TAG_SX "startx"
#define CNS_TAG_SY "starty"
#define CNS_TAG_FX "finishx"
#define CNS_TAG_FY "finishy"
#define CNS_TAG_CELLSIZE "cellsize"
#define CNS_TAG_GRID "grid"
#define CNS_TAG_ROW "row"
#define CNS_TAG_ANGLELIMIT "anglelimit"
#define CNS_TAG_DISTANCE "distance"
#define CNS_TAG_WEIGHT "hweight"
#define CNS_TAG_STEPLIMIT "steplimit"
#define CNS_TAG_CURVHEURWEIGHT "curvatureHeuristicWeight"
#define CNS_TAG_SMOOTHER "postsmoothing"
#define CNS_TAG_PIVOTCIRCLE "pivotCircleRadius"
#define CNS_TAG_DISTANCEMIN "distancemin"
#define CNS_TAG_DECRDISTFACTOR "decreaseDistanceFactor"
#define CNS_TAG_NOFPTOINCRAD "numOfParentsToIncreaseRadius"
#define CNS_TAG_OPTIONS "options"
#define CNS_TAG_LOGLVL "loglevel"
#define CNS_TAG_LOG "log"
#define CNS_TAG_MAPFN "mapfilename"
#define CNS_TAG_SUM "summary"
#define CNS_TAG_PATH "path"
#define CNS_TAG_ROW "row"
#define CNS_TAG_LPLEVEL "lplevel"
#define CNS_TAG_HPLEVEL "hplevel"
#define CNS_TAG_ANGLES "angles"
#define CNS_TAG_ANGLE "angle"
#define CNS_TAG_ITERS "iterations"
#define CNS_TAG_LOWLEVEL "lowlevel"
#define CNS_TAG_SECTION "section"
#define CNS_TAG_STEP "step"
#define CNS_TAG_OPEN "open"
#define CNS_TAG_NODE "node"
#define CNS_TAG_CLOSE "close"
/*
* End of XML files tags -------------------------------------------------------
*/
/*
* XML files tag's attributes --------------------------------------------------
*/
#define CNS_TAG_ATTR_NUMOFSTEPS "numberofsteps"
#define CNS_TAG_ATTR_NODESCREATED "nodescreated"
#define CNS_TAG_ATTR_LENGTH "length"
#define CNS_TAG_ATTR_LENGTHSC "length_scaled"
#define CNS_TAG_ATTR_SECTIONS "sections"
#define CNS_TAG_ATTR_TIME "time"
#define CNS_TAG_ATTR_X "x"
#define CNS_TAG_ATTR_Y "y"
#define CNS_TAG_ATTR_NUM "number"
#define CNS_TAG_ATTR_F "F"
#define CNS_TAG_ATTR_G "g"
#define CNS_TAG_ATTR_PARX "parent_x"
#define CNS_TAG_ATTR_PARY "parent_y"
#define CNS_TAG_ATTR_VALUE "value"
#define CNS_TAG_ATTR_SX "start.x"
#define CNS_TAG_ATTR_SY "start.y"
#define CNS_TAG_ATTR_FX "finish.x"
#define CNS_TAG_ATTR_FY "finish.y"
#define CNS_TAG_ATTR_PF "pathfound"
#define CNS_TAG_ATTR_TRUE "true"
#define CNS_TAG_ATTR_FALSE "false"
#define CNS_TAG_ATTR_MAXANGLE "max_angle"
#define CNS_TAG_ATTR_ACCUMANGLE "accum_angle"
/*
* End of XML files tag's attributes -------------------------------------------
*/
#endif