7 #include <QtWidgets/QMessageBox>
10 #include "HeightData.h"
40 void get_KOO_Waysavl();
42 void setfilename(
string fileName);
46 float d,
int KOOc, readdirection rd);
51 void reset_KOO_status(
KOO* k,
char i);
70 lines **motorWay,**highway,**primary,**secondary,**track,**track2,
71 **river,**creek,**
wood,**water, **NoHeight;
85 short isin(
lines* l,
double minlat,
double maxlat,
86 double minlon,
double maxlon);
87 short isin(
points* l,
double minlat,
double maxlat,
88 double minlon,
double maxlon);
89 short isin(
KOO* k,
double minlat,
double maxlat,
90 double minlon,
double maxlon);
91 short isin(
Way* w,
double minlat,
double maxlat,
92 double minlon,
double maxlon);
93 short iscompletein(
Way* w,
double minlat,
double maxlat,
94 double minlon,
double maxlon);
99 int count_cross(
KOO *k);
100 int count_STRONG(
KOO *k);
104 void save(
char* filename,
double minlat,
double maxlat,
105 double minlon,
double maxlon);
107 void load(
char* filename);
110 void select_cross(
double lat,
double lon,
111 KOO** kdest,
float* d,
KOO* ksrc);
112 Way* select_Way(
double lat,
double lon);
113 void change_Waytype(
Way* w,
char newtype);
114 void del_Way(
Way* w);
115 void normalize_Hm(
KOO* k);
116 void invert_Hm(
KOO* k);
117 void reset_Hm(
KOO* k);
118 void points_Hm(
KOO* k);
119 KOO* search(qint64
id,
KOO* s);
120 void merge(
KOO* knew,
KOO* kold);
123 void deleteRect(
double minlat,
double maxlat,
124 double minlon,
double maxlon);
127 short check_AVL(
Way* w);
128 qint64 extract_valuei(
char* s,
const char* a);
131 double extract_valuef(
char* s,
const char* a);
133 char* extract_valuec(
char* s,
const char* a);
135 void extract_bbox(
char* s);
136 void quotationreplace(
char* a);
137 void htmlreplace(
char* c);
152 KOO* insert(qint64
id,
KOO* s);
155 KOO* rotate(
KOO** s, branch b);
157 KOO* insert_AVL(qint64
id,
KOO** s);
160 Way* insert(qint64
id,
Way* s);
162 Way* rotate(
Way** s, branch b);
164 Way* insert_AVL(qint64
id,
Way** s);
166 Way* search(qint64
id,
Way* s);
168 void get_KOO_Waysavl(
Way* l,
short next);
174 void check_lines_rek(
lines** l);
175 void delete_AVL(
Way* l);
176 void delete_AVL(
KOO* l);
177 void delete_lines(
lines* l);
178 void delete_points(
points* l);
182 void nodehandling(FILE *f,
char* line,
char* lineattr,
char* linename);
184 void Wayhandling(FILE *f,
char* line,
char* lineattr,
char* linename,
185 qint64* currentseek);
187 void relationhandling(FILE *f,
char* line,
char* lineattr,
char* linename,
188 qint64* currentseek);
197 void invert_points(
points** l);
204 void calc_brect(
points** l);
206 void calc_brect(
lines** l);
214 void save_node(
KOO* k, FILE* f);
215 void save_Way(
Way* w, FILE* f);
216 void save_cross(
KOO* k, FILE* f,
int* c,
double minlat,
217 double maxlat,
double minlon,
double maxlon);
218 void save_lines(
lines** l, FILE* f,
double minlat,
double maxlat,
219 double minlon,
double maxlon);
220 void save_points(
points** p, FILE* f,
double minlat,
double maxlat,
221 double minlon,
double maxlon);
226 void reset_KOO_status(
KOO* k);
227 KOO* load_node(FILE* f);
228 Way* load_Way(FILE* f);
229 void load_cross(FILE* f);
230 void load_lines(
lines** l, FILE* f);
231 void load_points(
points** p, FILE* f);
232 void replace_Way_KOO(
Way* w,
KOO** newKOO,
int newlength);
236 void equal_crossheight(
KOO* k);
240 void extract_Way(
lines* l,
Way* w,
Way* k,
char mintype,
char maxtype);
241 void del_lines(
Way* w,
lines** l,
char* keepname);
242 void del_Neighbour(
KOO* k,
Way* w);
244 void del_Way(
Way* w,
double minlat,
double maxlat,
245 double minlon,
double maxlon);
container struct to hold data of a coordinate
routing container struct, connects cross via Way with each other
double minlat
bounding rect of the osm data set
holds digital elevation model extracted from SRTM3 data
double dminlat
claimed bounding rect of the &osm data file
container for line geodata
osm data container list for relation data (multiple lakes and forrests)
BTP3 database, created from OpenStreetMap data.
int status
osm usage status variable
osm data container list for line like data (roads, rivers)
osm data container list for point like data (summits, towns, ...)
points ** village
20 : tag village, suburban