rasteraccess.py 856 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. #!/usr/bin/python
  2. # run within GRASS Spearfish session
  3. import os, sys
  4. import swig.grass as grasslib
  5. import swig.raster as grassrast
  6. if not os.environ.has_key("GISBASE"):
  7. print "You must be in GRASS GIS to run this program."
  8. sys.exit(1)
  9. if len(sys.argv)==2:
  10. input = sys.argv[1]
  11. else:
  12. input = raw_input("Raster Map Name? ")
  13. # initialize
  14. grasslib.G_gisinit('')
  15. # find map in search path
  16. mapset = grasslib.G_find_cell2(input,'')
  17. # determine the inputmap type (CELL/FCELL/DCELL) */
  18. data_type = grasslib.G_raster_map_type(input, mapset)
  19. infd = grasslib.G_open_cell_old(input, mapset)
  20. inrast = grasslib.G_allocate_raster_buf(data_type)
  21. rown=0
  22. while 1:
  23. myrow = grasslib.G_get_raster_row(infd, inrast, rown, data_type)
  24. print rown,myrow[0:10]
  25. rown = rown+1
  26. if rown==476:break
  27. grasslib.G_close_cell(inrast)
  28. grasslib.G_free(cell)