X-Git-Url: http://pileus.org/git/?p=grits;a=blobdiff_plain;f=src%2Fplugins%2Felev.c;h=f59238d1e66c0b62f617fde3c25fe20d21b4405f;hp=9279b08190ca9c6e1ec314077b2e4cc52d26da73;hb=d8948985b467a5cfd0447ae413ed1c5d01afb024;hpb=cbbad9dcf6bd2b27eca13aa61ab666035859932e diff --git a/src/plugins/elev.c b/src/plugins/elev.c index 9279b08..f59238d 100644 --- a/src/plugins/elev.c +++ b/src/plugins/elev.c @@ -29,7 +29,7 @@ #include #include -#include +#include #include "elev.h" @@ -188,7 +188,7 @@ static gboolean _load_tile_cb(gpointer _load) /* Do necessasairy processing */ /* TODO: Lock this and move to thread, can remove elev from _load then */ if (LOAD_BIL) - gis_viewer_set_height_func(elev->viewer, tile, _height_func, elev, TRUE); + gis_viewer_set_height_func(elev->viewer, &tile->edge, _height_func, elev, TRUE); /* Cleanup unneeded things */ if (!LOAD_BIL) @@ -237,7 +237,6 @@ static gboolean _free_tile_cb(gpointer _data) } static void _free_tile(GisTile *tile, gpointer _elev) { - GisPluginElev *elev = _elev; g_debug("GisPluginElev: _free_tile: %p", tile->data); if (tile->data) g_idle_add_full(G_PRIORITY_LOW, _free_tile_cb, tile->data, NULL); @@ -248,11 +247,10 @@ static gpointer _update_tiles(gpointer _elev) GisPluginElev *elev = _elev; if (!g_mutex_trylock(elev->mutex)) return NULL; - gdouble lat, lon, elevation; - gis_viewer_get_location(elev->viewer, &lat, &lon, &elevation); - gis_tile_update(elev->tiles, + GisPoint eye; + gis_viewer_get_location(elev->viewer, &eye.lat, &eye.lon, &eye.elev); + gis_tile_update(elev->tiles, &eye, MAX_RESOLUTION, TILE_WIDTH, TILE_WIDTH, - lat, lon, elevation, _load_tile, elev); gis_tile_gc(elev->tiles, time(NULL)-10, _free_tile, elev);