[gdal-dev] HFA and RAT

Sam Gillingham gillingham.sam at gmail.com
Tue Sep 3 14:47:48 PDT 2013


Hi Ivan,

Yes I can see this also with the trunk version. The problem is that with
the RFC40 changes the HFA driver always returns something from
GetDefaultRAT even if it is an empty table - you can now start writing data
directly into the table with the returned object.

Below is a patch to prevent the Serialize() method returning anything when
the row and column count is zero. I will submit this as a bug report if
people think it is a good workaround.

Sam.


--- gcore/gdal_rat.cpp.orig     Wed Sep  4 09:27:51 2013
+++ gcore/gdal_rat.cpp  Wed Sep  4 09:28:33 2013
@@ -502,6 +502,9 @@
     CPLXMLNode *psTree = NULL;
     CPLXMLNode *psRow = NULL;

+    if( ( GetColumnCount() == 0 ) && ( GetRowCount() == 0 ) )
+        return NULL;
+
     psTree = CPLCreateXMLNode( NULL, CXT_Element,
"GDALRasterAttributeTable" );

 /* -------------------------------------------------------------------- */



On 4 September 2013 08:22, Ivan Lucena <lucena_ivan at hotmail.com> wrote:

> Take any image, a screenshot of your desktop for example, save it as .bmp
> "gdal_translate" it to HFA, .img file, and run gdalinfo on it (trunk
> version). It's only me or at the end of the gdalinfo report do you also see
> <GDALRasterAttributeTable /> for each band?
>
> Band 1 Block=64x64 Type=Byte, ColorInterp=Undefined
>   Description = Layer_1
>   Metadata:
>     LAYER_TYPE=athematic
> <GDALRasterAttributeTable />
>
> Band 2 Block=64x64 Type=Byte, ColorInterp=Undefined
>   Description = Layer_2
>   Metadata:
>     LAYER_TYPE=athematic
> <GDALRasterAttributeTable />
>
> Band 3 Block=64x64 Type=Byte, ColorInterp=Undefined
>   Description = Layer_3
>   Metadata:
>     LAYER_TYPE=athematic
> <GDALRasterAttributeTable />
>
> It seems to me that the HFA driver is reporting incorrectly when the GDAL
> API function GDALGetDefaultRAT is called by gdalinfo.
>
> _______________________________________________
> gdal-dev mailing list
> gdal-dev at lists.osgeo.org
> http://lists.osgeo.org/mailman/listinfo/gdal-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/gdal-dev/attachments/20130904/16b1d8a1/attachment.html>


More information about the gdal-dev mailing list