vectoraccess.py 1.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #!/usr/bin/python
  2. # run within GRASS Spearfish session
  3. import os, sys
  4. import python_grass7 as g7lib
  5. if not os.environ.has_key("GISBASE"):
  6. print "You must be in GRASS GIS to run this program."
  7. sys.exit(1)
  8. if len(sys.argv)==2:
  9. input = sys.argv[1]
  10. else:
  11. input = raw_input("Vector Map Name? ")
  12. mapset = 'PERMANENT'
  13. # initialize
  14. g7lib.G_gisinit('')
  15. # define map structure
  16. map = g7lib.Map_info()
  17. # define open level (level 2: topology)
  18. g7lib.Vect_set_open_level (2)
  19. # open existing map
  20. g7lib.Vect_open_old(map, input, mapset)
  21. # query
  22. print 'Vect map: ', input
  23. print 'Vect is 3D: ', g7lib.Vect_is_3d (map)
  24. print 'Vect DB links: ', g7lib.Vect_get_num_dblinks(map)
  25. print 'Map Scale: 1:', g7lib.Vect_get_scale(map)
  26. # misleading:
  27. # print 'Number of lines:', g7lib.Vect_get_num_lines(map)
  28. print 'Number of points: ', g7lib.Vect_get_num_primitives(map,g7lib.GV_POINT)
  29. # confusing:
  30. #print 'Number of lines: ', g7lib.Vect_get_num_primitives(map,g7lib.GV_LINE)
  31. #print 'Number of areas:', g7lib.Vect_get_num_primitives(map,g7lib.GV_AREA)
  32. print 'Number of areas:', g7lib.Vect_get_num_areas(map)
  33. # close map
  34. g7lib.Vect_close(map)
  35. ## end of the python script