Opened 14 years ago

Closed 11 years ago

#612 closed enhancement (fixed)

Add IDRISI Raster Format

Reported by: warmerdam Owned by: warmerdam
Priority: normal Milestone:
Component: GDAL_Raster Version: unspecified
Severity: minor Keywords:
Cc: neteler@…, jcbugz@…

Description (last modified by warmerdam)

Dear Frank,

over the past few months I have using a number of applications using gdal
(mostly openev) to visualize my raster data.

For compatibility reasons I mostly use the IDRISI raster data format, which is a
flat binary format with an ascii documentation file. In order to be able to use
gdal-based applications I used a simple script that created PCI .aux
documentation files before passing the raster to the application.

It would be really good to have direct IDRISI support in GDAL, though!

I looked at the driver implementation tutorial and also browsed the .aux cpp
file - but having never dealt with c++ before I couldn't really find the lines
to amend.

Would it be possible for you to implement the IDRISI raster format in GDAL? I am
sure it is a very easy thing to do for someone with some knowledge of c++.

The format works as follows:

1.) For each image there is a .rst (.RST) flat binary raster file
    either in byte (8bit), integer (16bit) or real (32bit)
2.) For each rst there is an .rdc (.RDC) file containing the
    reference info for the former. A sample:


file format : IDRISI Raster A.1
file title  : anything really
data type   : real
file type   : binary
columns     : 926
rows        : 334
ref. system : plane
ref. units  : m
unit dist.  : 1.0000000
min. X      :     1584.0000000
max. X      :     2509.0000000
min. Y      :      240.0000000
max. Y      :      573.0000000
pos`n error : unknown
resolution  : unknown
min. value  :       0.00
max. value  :      30.00
display min :       0.00
display max :      30.00
value units : unspecified
value error : unknown
flag value  : none
flag def`n  : none
legend cats : 0


The first line is constant (file format : IDRISI Raster A.1).
The spacing up to the colon is important (start in the first column, colon
always in the same place), after the colon it doesn't matter (see "min. X" for
example), although there usually is just one blank in between the colon and the

Since IDRISI is a windows application, there is a CRLF at the end of each line
(relevant for writing only).

The 'data type' field can have the values 'byte' (8 bit), 'integer' (16bit) and
'real' (32 bit).

Everything else should be self-explanatory.

I would really be very happy about an implementation of this format!

Thanks very much and kind regards,

Change History (3)

comment:1 Changed 14 years ago by jcbugz@…

Sample data available from

comment:2 Changed 14 years ago by warmerdam

Thanks ... I have grabbed that. 

comment:3 Changed 11 years ago by warmerdam

Description: modified (diff)
Priority: highnormal
Resolution: fixed
Status: newclosed

This was done, I think for 1.3.2.

Note: See TracTickets for help on using tickets.