Premise:
Exporting FCELL or DCELL raster data from GRASS to ArcGIS can be a bit of a pain. Exporting to GeoTIFF with r.out.gdal can result in files which sort of work. In ArcMap these files are initially displayed as having a data range of (1.17549e-038,3.40282e+038). If however, you choose to render the image using a fixed number of classes, the correct data range is displayed. Converting the geotiff to GRID via IMAGEGRID resulting in a bogus file, which appears to be caused by IMAGEGRID interpreting it as integer. Some of theses issues may be associated with this ticket on the OSGEO trac site.

Key points:

  • proper encoding of NoData values
  • proper encoding of coordinate system metadata
  • proper interleaving of geotiff files: Arc-*** wants pixel-interleaved data

Here are some attempts using the spearfish60 sample dataset:

1. Try r.out.gdal [data range in ArcMap 9.2 is reported as (1.17549e-038,3.40282e+038)]

 # setup region
g.region rast=elevation.10m
# export to GeoTIFF
r.out.gdal in=elevation.10m format=GTiff type=Float32 \
createopt="COMPRESS=PACKBITS,INTERLEAVE=PIXEL" out=rast1.tif

2. Try r.out.arc and gdal_translate [data range in ArcMap 9.2 is reported as (1.17549e-038,3.40282e+038)]

# 2. export basic ASCII grid
r.out.arc in=elevation.10m out=rast2.asc

# convert to GeoTIFF and embed SRS
# ArcMap 9.2 does not use the world file
gdal_translate -a_srs '+proj=utm +zone=13 +a=6378206.4 +rf=294.9786982 +no_defs +nadgrids=/usr/local/grass-6.3.svn/etc/nad/conus +to_meter=1.0' \
-a_nodata -9999 \
-co INTERLEAVE=PIXEL \
-co TFW=YES \
-co COMPRESS=PACKBITS \
rast2.asc rast2.tif

3. Try r.out.arc with post-processing in ArcMap [works fine, SRS is lost, and ASCII files may become VERY large]

 # export basic ASCII grid
r.out.arc in=elevation.10m out=rast2.asc
# convert ASCII grid to ArcInfo GRID format (via ArcInfo Workstation):
asciigrid rast2.asc rast2 FLOAT