X-Git-Url: http://pileus.org/git/?a=blobdiff_plain;f=src%2Fplugins%2Felev.c;h=7e4509f57e3182884bb83f7d7a1e19a8160a530b;hb=156f921ad641a2f89d0355383d8e53a316edaa9a;hp=e99b32633971981a5a406011455990c073110e78;hpb=032ddbf6f1d5abbfc96e236e3a9f22b867f009f1;p=grits diff --git a/src/plugins/elev.c b/src/plugins/elev.c index e99b326..7e4509f 100644 --- a/src/plugins/elev.c +++ b/src/plugins/elev.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 2009-2010 Andy Spencer + * Copyright (C) 2009-2011 Andy Spencer * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -25,7 +25,6 @@ * greyscale elevation overlay on the planets surface. */ -#include #include #include @@ -33,7 +32,7 @@ #include "elev.h" -#define MAX_RESOLUTION 500 +#define MAX_RESOLUTION 50 #define TILE_WIDTH 1024 #define TILE_HEIGHT 512 #define TILE_SIZE (TILE_WIDTH*TILE_HEIGHT*sizeof(guint16)) @@ -114,7 +113,7 @@ static guint16 *_load_bil(gchar *path) g_file_get_contents(path, &data, &len, NULL); g_debug("GritsPluginElev: load_bil %p", data); if (len != TILE_SIZE) { - g_warning("GritsPluginElev: _load_bil - unexpected tile size %d, != %d", + g_warning("GritsPluginElev: _load_bil - unexpected tile size %ld, != %ld", len, TILE_SIZE); g_free(data); return NULL; @@ -205,6 +204,7 @@ static void _load_tile(GritsTile *tile, gpointer _elev) struct _LoadTileData *load = g_new0(struct _LoadTileData, 1); load->path = grits_wms_fetch(elev->wms, tile, GRITS_ONCE, NULL, NULL); + if (!load->path) return; // Canceled/error g_debug("GritsPluginElev: _load_tile: %s", load->path); load->elev = elev; load->tile = tile; @@ -328,7 +328,7 @@ static void grits_plugin_elev_init(GritsPluginElev *elev) elev->mutex = g_mutex_new(); elev->tiles = grits_tile_new(NULL, NORTH, SOUTH, EAST, WEST); elev->wms = grits_wms_new( - "http://www.nasa.network.com/elev", "srtm30", "application/bil", + "http://www.nasa.network.com/elev", "mergedSrtm", "application/bil", "srtm/", "bil", TILE_WIDTH, TILE_HEIGHT); } static void grits_plugin_elev_dispose(GObject *gobject) @@ -340,7 +340,7 @@ static void grits_plugin_elev_dispose(GObject *gobject) if (LOAD_BIL) grits_viewer_clear_height_func(elev->viewer); if (LOAD_OPENGL) - grits_viewer_remove(elev->viewer, elev->tiles); + grits_viewer_remove(elev->viewer, GRITS_OBJECT(elev->tiles)); g_signal_handler_disconnect(elev->viewer, elev->sigid); g_object_unref(elev->viewer); elev->viewer = NULL;