From: Bborie Park Date: Tue, 29 Jan 2013 15:25:19 +0000 (+0000) Subject: Added check that raster metadata check and warn if not X-Git-Tag: 2.1.0beta2~227 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=33677a07eda76f39af30dc3d4d73c189f91bc4b1;p=postgis Added check that raster metadata check and warn if not git-svn-id: http://svn.osgeo.org/postgis/trunk@11060 b70326c6-7e19-0410-871a-916f4a2858ee --- diff --git a/raster/rt_core/rt_api.c b/raster/rt_core/rt_api.c index 0d1c56fbc..945efb61a 100644 --- a/raster/rt_core/rt_api.c +++ b/raster/rt_core/rt_api.c @@ -1584,6 +1584,7 @@ rt_band_load_offline_data(rt_band band) { double gt[6] = {0.}; double ogt[6] = {0.}; double offset[2] = {0}; + int i = 0; rt_raster _rast = NULL; rt_band _band = NULL; @@ -1631,6 +1632,15 @@ rt_band_load_offline_data(rt_band band) { RASTER_DEBUGF(3, "Offline geotransform (%f, %f, %f, %f, %f, %f)", ogt[0], ogt[1], ogt[2], ogt[3], ogt[4], ogt[5]); + /* check that geotransforms match */ + for (i = 0; i < 6; i++) { + if (FLT_NEQ(gt[i], ogt[i])) { + rtwarn("Georeferencing metadata does not match. Incorrect band data may be loaded"); + RASTER_DEBUGF(3, "Geotransform matrix element %d does not match", i); + break; + } + } + /* get offsets */ rt_raster_geopoint_to_cell( band->raster, @@ -1640,8 +1650,6 @@ rt_band_load_offline_data(rt_band band) { ); RASTER_DEBUGF(4, "offsets: (%f, %f)", offset[0], offset[1]); - /* XXX: should there be a check for the spatial attributes between the offline raster file and that of the raster? */ - /* create VRT dataset */ hdsDst = VRTCreate(band->width, band->height); GDALSetGeoTransform(hdsDst, gt);