rasteraccess.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. #!/usr/bin/python
  2. # run within GRASS Spearfish session
  3. # run this before starting python to append module search path:
  4. # export PYTHONPATH=/usr/src/grass70/swig/python
  5. # check with "import sys; sys.path"
  6. # or:
  7. # sys.path.append("/usr/src/grass70/swig/python")
  8. # FIXME: install the grass bindings in $GISBASE/lib/ ?
  9. import os, sys
  10. import grass
  11. if not os.environ.has_key("GISBASE"):
  12. print "You must be in GRASS GIS to run this program."
  13. sys.exit(1)
  14. if len(sys.argv)==2:
  15. input = sys.argv[1]
  16. else:
  17. input = raw_input("Raster Map Name? ")
  18. # initialize
  19. grass.G_gisinit('')
  20. # find map in search path
  21. mapset = grass.G_find_cell2(input,'')
  22. # determine the inputmap type (CELL/FCELL/DCELL) */
  23. data_type = grass.G_raster_map_type(input, mapset)
  24. infd = grass.G_open_cell_old(input, mapset)
  25. inrast = grass.G_allocate_raster_buf(data_type)
  26. rown=0
  27. while 1:
  28. myrow = grass.G_get_raster_row(infd, inrast, rown, data_type)
  29. print rown,myrow[0:10]
  30. rown = rown+1
  31. if rown==476:break
  32. grass.G_close_cell(inrast)
  33. grass.G_free(cell)