Tips for Arc users: Difference between revisions
Line 47: | Line 47: | ||
v.out.ogr input=lines_3d type=line dsn=/tmp olayer=testogr lco="SHPT=ARCZ" | v.out.ogr input=lines_3d type=line dsn=/tmp olayer=testogr lco="SHPT=ARCZ" | ||
==== | ==== Various vector commands ==== | ||
* Tips for [[Digitizing_Area_Features|Digitizing area features with attributes]] | * Editing differences | ||
** Tips for [[Digitizing_Area_Features|Digitizing area features with attributes]] | |||
=== Raster import/export commands === | === Raster import/export commands === |
Revision as of 13:56, 22 April 2009
Working with your ArcGIS data
Importing ArcGIS Data
Grass provides convertors for importing ESRI shapefiles, e00 files, and many other GIS formats as well. The key Grass programs for importing vector formats are v.in.ogr (for ESRI shapefiles, MapInfo files, SDTS, TIGER, etc.) and v.in.e00 for e00 format.
Vector import/export commands
- v.out.ogr - Convert from the GRASS vector format to one of the supported OGR vector formats.
- v.in.e00 - Import a E00 coverage into a GRASS vector map.
Import of Shapefiles into Grass
specify the directory
v.in.ogr dsn=/home/data/navigation_files output=Tracklines layer=Ship_Tracklines
- or just the .shp file name directly
v.in.ogr dsn=Ship_Tracklines.shp output=Tracklines
This is the syntax for v.in.ogr in its most basic form. The dsn parameter corresponds to the directory path of the vector you are trying to import. You can enter a full or relative path. The output paramter, aptly enough, is the name of your output Grass vector. The layer parameter is the name of the input vector, be it shapefile, MapInfo file, or what have you.
Export of Shapefiles from GRASS
Shapefiles can only hold one type of data (point, line, polygon) per shapefile. You can't export a GRASS vector map with both points and areas to a single shapefile. You'll have to do it in two passes to two different files with v.out.ogr and different "type=" parameters.
Export lines from GRASS vector map to Shapefile format (generates /tmp/testogr.shp and related files):
v.out.ogr input=multi type=line dsn=/tmp olayer=testogr
Export areas from GRASS vector map to Shapefile format (generates /tmp/testogr.shp and related files):
v.out.ogr input=multi type=area dsn=/tmp olayer=testogr
Export 3D lines from GRASS vector map to Shapefile format:
v.out.ogr input=lines_3d type=line dsn=/tmp olayer=testogr lco="SHPT=ARCZ"
Various vector commands
- Editing differences
Raster import/export commands
- r.in.arc - Convert an ESRI ARC/INFO ascii raster file (GRID) into a GRASS (binary) raster map layer.
- r.out.arc - Converts a GRASS raster map layer into an ESRI ARCGRID file.
- r.in.gdal - Import GDAL supported raster file into a binary raster map layer.
- Import a binary ArcInfo raster grid into GRASS:
r.in.gdal input=/path/to/map/hdr.adf output=map
- r.out.gdal - Exports GRASS raster data into various formats.
- Export a raster as a GeoTIFF for use with ArcView 3.1:
r.out.gdal input=map output=map.tif type=Byte createopt="INTERLEAVE=PIXEL,COMPRESS=PACKBITS"
Import ArcASCII raster grid and connect to database
The trick is to convert the raster coverage to vector areas to take advantage of GRASS's rich vector attribute/database tie-ins. You can use either r.in.arc or r.in.gdal for the import. If using r.in.arc be careful to set the map type to CELL for categorical maps.
# import ArcASCII grid to UTM55S location r.in.gdal input=aas_z55.asc output=aas_z55 r.colors aas_z55.gdal color=random r.info aas_z55 # convert to vector areas, using raster value for category g.region rast=aas_z55 r.to.vect -v in=aas_z55.gdal out=aas_z55 feature=area # get rid of empty DBF table created by r.to.vect v.db.droptable aas_z55 # copy real DBF file into $MAPSET/dbf/ directory eval `g.gisenv` cp /tmp/au/aas_z55.DBF "$GISDBASE/$LOCATION_NAME/$MAPSET/dbf/aas_z55.dbf" # connect full DBF database to vector map, use "VALUE" as the key column v.db.connect map=aas_z55 driver=dbf table=aas_z55 key=value
done!
Various hydrology and terrain analysis commands
- Watershed modeling differences:
- ArcInfo wants a depressionless, filled, hydrologically correct DEM.
- r.watershed does explicitly not want such a DEM, it just wants a raw DEM with depressions, not filled, and not hydrologically correct (hence, no preparations needed).
- How to Create watersheds for specific drainage points like the Arc Hydro extension