8 #include <QFontMetrics>
10 #include <QPainterPath>
15 #include "HeightData.h"
17 #include <QtWidgets/QMessageBox>
36 double lonmin0,
double lonmax0);
49 void OSMtoMAP(
short getcmap,
short drawroads,
short drawnature ,
short drawpoints);
73 void draw_line(QPainter* p,
double** k,
int count);
76 int Draw_lighted_text(QPainter* p,
KOO *k, QString* w,
77 QColor* lightcolor, QColor* textcolor);
87 double x_to_lon(
int x);
88 double lat_to_y(
double lat);
89 double lon_to_x(
double lon);
90 double xy_to_height(
int x,
int y);
98 int width, height, oldwidth, oldheight;
128 double xtolon(
int x);
129 float lattoy(
double lat);
130 float lontox(
double lon);
154 QColor colorgradientSL(
float x);
155 QColor colorgradientSchading(
float x);
158 void mult_color(
unsigned char*
cd, QColor* c);
161 float linewidth,
float minlinewidth);
162 void pointtomap(
OSM* o, QPainter *p,
points** pp,QColor QColor,
float size);
163 void peaktomap(
OSM* o, QPainter *p,
points** pp,
float min,
float max,
164 QColor QColor,
float size);
165 void waternametomap(
OSM* o, QPainter *p,
lines** pp,QColor QColor,
float size);
166 void streetnametomap(
OSM* o, QPainter *p,
lines** pp,QColor QColor,
float size);
167 void rivernametomap(
OSM* o, QPainter *p,
lines** pp,QColor QColor,
float size);
168 void add_scale(QPainter *p);
178 void Draw_lighted_text(QPainter *p, QString* w, QPointF P,
179 QColor* lightcolor, QColor* textcolor);
180 void Draw_lighted_Path(QPainter* g, QPainterPath* p,
181 QBrush* lightbrush,QBrush* textbrush);
182 int Draw_aligned_text(QPainter* g,QPointF* path,
int pointcount, QString*w,
183 QPointF P,QBrush* lightbrush, QBrush* textbrush);
199 void TemplatetoColorData();
201 void set(
int x,
int y,
char val);
211 int IntSec(QRectF R,
char l);
void SRTM3ClimbtoMAP(climblayer *cl)
climb layer method: SRTM3 DEM plus shading of climbs
void settings(MapSettings *MS)
assigns new settings
float mperlat
meter per SRTM3 cell vertical
void add_contour()
adds contours to relief
void OSMtoMAP(short getcmap, short drawroads, short drawnature, short drawpoints)
draws Open Street Map data
int lowcontour
small contour step
void reset_Template()
clears tamplate
void draw_line(QPainter *p, KOOlist *k, int kc)
drawing commends from outside
void set(int x, int y, char val)
edge flag algorithm marking the px(x,y), used by linestoTemplate
QPointF HP[28]
help data to render picture
float pxperlon
px per SRTM3 cell horizontal
MAP(HeightData *h, OSM *o)
create with SRTM3 class and OSM-data manager
void STRONGlayer_to_Map(QPainter *p, STRONGlayer *SL)
draws STRONG calculation network
void add_DEM()
transform heighdata with sun settings into colors
double getminlat()
return real borders
list elements to handle multiple STRONGlayers
container struct to hold data of a coordinate
void SRTM3toMAP(short getcmap)
draws the relief
float zoomsize(float size)
int highcontour
big contour step
void facetoTemplate(lines **ff, char val)
fills areas marked by edge flag algorithm
void climblayer_schading(climblayer *cl)
climb layer method: shading called from SRTM3ClimbtoMAP()
QColor colorgradient(float x)
color functions
short check_TemplateSpace(QRectF R)
check R on the picture if free
float pxperlat
px per SRTM3 cell vertical
void linetomap(OSM *o, QPainter *p, lines **ll, QColor QColor, float linewidth, float minlinewidth)
OSM drawing.
holds digital elevation model extracted from SRTM3 data
void ClimbTracks(QPainter *p, climblayer *cl)
climb layer method: draw tracks
official representation of Track in BTP3
double mmaxlat
marcator projection scaled lattitude
void save_to_png(QString filename)
save map as picture to hard disk
void resize(int width, int height)
adapts size, recalculate borders from desired borders
double y_to_lat(int y)
map coordinate information
int width
specified picture format
float mperlon
meter per SRTM3 cell horizontal
void set_borders(double latmin0, double latmax0, double lonmin0, double lonmax0)
sets desired borders, recalculate bordes due to window size
double minlat0
desired area with ordinary coordinates
QPixmap * get_Map()
return pixmap of the last generated map
void calc_borders()
desired borders to real borders
void set_TemplateSpace(QRectF R)
marks R on the picture as occupied
void draw_map(STRONGlayer *SL, climblayer *cl, Track *ct, int fastmode)
universal high quality drawing
BTP3 database, created from OpenStreetMap data.
void ClimbLabels(QPainter *p, climblayer *cl, int fastmode)
climb layer method: draw labels
int IntSec(QRectF R, char l)
quantifies l-content in r-region
double minlat
smaller area inside desired conform width picture scales
void linestoTemplate(lines *f, char val)
edge flag algorithm to draw polyedges
void change_intensity(int x, int y, double dI)
void add_BestClimb_Bar(QPainter *p, climblayer *cl)
projects best climbs to the borders of the picture
void htocolorfast(unsigned char *cd, float h, float dxf, float dyf)
function to height to color operation
main container for Track, WayHeight and ClimbAnalyse
osm data container list for line like data (roads, rivers)
osm data container list for point like data (summits, towns, ...)
void climblayer_to_map(climblayer *cl)
draws climbs