add iconPaths and enable map rotation
This commit is contained in:
parent
4af5ab049c
commit
449ce49135
2 changed files with 27 additions and 6 deletions
|
@ -54,6 +54,8 @@ static osmscout::MapPainterCairo *cairoMapPainter{nullptr};
|
||||||
|
|
||||||
int DrawMapCairoInit(int argc, char* argv[])
|
int DrawMapCairoInit(int argc, char* argv[])
|
||||||
{
|
{
|
||||||
|
std::list<std::string> iconPaths;
|
||||||
|
|
||||||
database=std::make_shared<osmscout::Database>(databaseParameter);
|
database=std::make_shared<osmscout::Database>(databaseParameter);
|
||||||
if (!database->Open("data/nordrhein-westfalen-latest/")) {
|
if (!database->Open("data/nordrhein-westfalen-latest/")) {
|
||||||
std::cerr << "Cannot open database" << std::endl;
|
std::cerr << "Cannot open database" << std::endl;
|
||||||
|
@ -75,8 +77,11 @@ int DrawMapCairoInit(int argc, char* argv[])
|
||||||
drawParameter.SetRenderContourLines(false);
|
drawParameter.SetRenderContourLines(false);
|
||||||
drawParameter.SetRenderHillShading(false);
|
drawParameter.SetRenderHillShading(false);
|
||||||
|
|
||||||
//drawParameter.SetIconMode(args.iconMode);
|
drawParameter.SetIconMode(osmscout::MapParameter::IconMode::Scalable);
|
||||||
//drawParameter.SetIconPaths(args.iconPaths);
|
iconPaths.push_back("data/icons/svg/standard/");
|
||||||
|
drawParameter.SetIconPaths(iconPaths);
|
||||||
|
drawParameter.SetPatternMode(osmscout::MapParameter::PatternMode::Scalable);
|
||||||
|
drawParameter.SetPatternPaths(iconPaths);
|
||||||
|
|
||||||
drawParameter.SetDebugData(false);
|
drawParameter.SetDebugData(false);
|
||||||
drawParameter.SetDebugPerformance(false);
|
drawParameter.SetDebugPerformance(false);
|
||||||
|
@ -100,7 +105,7 @@ int DrawMapCairoInit(int argc, char* argv[])
|
||||||
int DrawMapCairo(cairo_surface_t *surface, double lat, double lon, unsigned int zoomlevel, double direction)
|
int DrawMapCairo(cairo_surface_t *surface, double lat, double lon, unsigned int zoomlevel, double direction)
|
||||||
{
|
{
|
||||||
osmscout::GeoCoord center(lat, lon);
|
osmscout::GeoCoord center(lat, lon);
|
||||||
osmscout::Magnification zoom{osmscout::Magnification::magClose};
|
osmscout::Magnification zoom; /*{osmscout::Magnification::magClose};*/
|
||||||
osmscout::GeoBox boundingBox;
|
osmscout::GeoBox boundingBox;
|
||||||
cairo_t *cairo=cairo_create(surface);
|
cairo_t *cairo=cairo_create(surface);
|
||||||
|
|
||||||
|
|
22
gmapnix.c
22
gmapnix.c
|
@ -81,8 +81,14 @@ gchar *dir=(gchar *)user_data;
|
||||||
case '-':
|
case '-':
|
||||||
zoomlevel-=(zoomlevel/10);
|
zoomlevel-=(zoomlevel/10);
|
||||||
break;
|
break;
|
||||||
|
case '>':
|
||||||
|
direction-=.1;
|
||||||
|
break;
|
||||||
|
case '<':
|
||||||
|
direction+=.1;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
fprintf(stderr, "%f %f @ %d\n", center_lat, center_lon, zoomlevel);
|
fprintf(stderr, "%f %f @ %f %d\n", center_lat, center_lon, direction, zoomlevel);
|
||||||
need_redraw=TRUE;
|
need_redraw=TRUE;
|
||||||
gtk_widget_queue_draw(image_darea);
|
gtk_widget_queue_draw(image_darea);
|
||||||
}
|
}
|
||||||
|
@ -125,14 +131,24 @@ GtkWidget *grid;
|
||||||
g_signal_connect (w, "clicked",
|
g_signal_connect (w, "clicked",
|
||||||
G_CALLBACK (move_clicked), "d");
|
G_CALLBACK (move_clicked), "d");
|
||||||
gtk_grid_attach(GTK_GRID(grid), w, 1, 2, 1, 1);
|
gtk_grid_attach(GTK_GRID(grid), w, 1, 2, 1, 1);
|
||||||
|
|
||||||
w=gtk_button_new_with_label("+");
|
w=gtk_button_new_with_label("+");
|
||||||
g_signal_connect (w, "clicked",
|
g_signal_connect (w, "clicked",
|
||||||
G_CALLBACK (move_clicked), "+");
|
G_CALLBACK (move_clicked), "+");
|
||||||
gtk_grid_attach(GTK_GRID(grid), w, 3, 0, 1, 1);
|
gtk_grid_attach(GTK_GRID(grid), w, 4, 0, 1, 1);
|
||||||
w=gtk_button_new_with_label("-");
|
w=gtk_button_new_with_label("-");
|
||||||
g_signal_connect (w, "clicked",
|
g_signal_connect (w, "clicked",
|
||||||
G_CALLBACK (move_clicked), "-");
|
G_CALLBACK (move_clicked), "-");
|
||||||
gtk_grid_attach(GTK_GRID(grid), w, 3, 2, 1, 1);
|
gtk_grid_attach(GTK_GRID(grid), w, 4, 2, 1, 1);
|
||||||
|
|
||||||
|
w=gtk_button_new_with_label("<");
|
||||||
|
g_signal_connect (w, "clicked",
|
||||||
|
G_CALLBACK (move_clicked), "<");
|
||||||
|
gtk_grid_attach(GTK_GRID(grid), w, 3, 1, 1, 1);
|
||||||
|
w=gtk_button_new_with_label(">");
|
||||||
|
g_signal_connect (w, "clicked",
|
||||||
|
G_CALLBACK (move_clicked), ">");
|
||||||
|
gtk_grid_attach(GTK_GRID(grid), w, 5, 1, 1, 1);
|
||||||
|
|
||||||
gtk_container_add (GTK_CONTAINER (box), grid);
|
gtk_container_add (GTK_CONTAINER (box), grid);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue