[gdal-dev] Grib1 DataSet Oddities
Cassanova, Bill
BCassanova at weather.com
Wed Jul 22 19:23:07 EDT 2009
Hi All,
I have an oddity when trying to read a grib1 dataset.
When I extract the data using code:
hBand = GDALGetRasterBand(hSrcDS, 1 );
float *pafScanline;
int nXSize = GDALGetRasterBandXSize( hBand );
pafScanline = (float *) CPLMalloc(sizeof(float)*nXSize);
GDALRasterIO( hBand, GF_Read, 0, 0, nXSize, 1,
pafScanline, nXSize, 1, GDT_Float32,
0, 0 );
for( int j = 0; j < nXSize; j++ )
std::cout << pafScanline[j] << std::endl;
I am seeing values that are along the lines of:
12.86
12.802
12.734
12.671
12.562
12.425
12.241
12.12
12.043
12.035
11.986
11.917
11.83
11.776
The same grib1 file when dumped using wgrib produces values ( degrees Kelvin ):
295.552
295.565
295.577
295.589
295.6
295.61
295.619
295.626
295.633
295.639
As an additional piece of information when I use the same above code and extract values that are less that 1 the values are appearing correct. It is almost as if there is some sort of scaling issue
with values greater than 1.
I have tried changing the pafScanline to a double and made the appropriate GDT_Float64 changes to GDALRasterIO and I get the same results.
Am I missing something fundamental here?
Thanks,
Bill
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.osgeo.org/pipermail/gdal-dev/attachments/20090722/536ce21e/attachment.html
More information about the gdal-dev
mailing list