Skip to Content

lecture d'un shapefile

  1. import shapefile
  2.  
  3. # lecture d'un shapefile
  4. r = shapefile.Reader("cal")
  5.  
  6. # géométries
  7. shapes = r.shapes()
  8. len(shapes)
  9. 69
  10.  
  11. #type
  12. shapes[1].shapeType
  13. 5 # 5 = polygone, voir tableau de correspondance dans Wikipedia
  14.  
  15. shapes[1].bbox
  16. [166041.29064712161, 117797.22518872152, 166350.53212677286, 118171.99778449099]
  17. shapes[3].parts # pour les multi...
  18.  
  19. # un des points constituant le polygone 2
  20. shapes[2].points[1]
  21. [167406.88755870616, 117732.11791073898]
  22.  
  23. # champs
  24. champs = r.fields
  25. print champs
  26. [('DeletionFlag', 'C', 1, 0),['FORMATION_', 'N', 11, 0],['SYMBOL', 'N', 11, 0]]
  27.  
  28. # attributs du 2e élément
  29. print r.record(2)
  30. ['CRI',154]
  31.  
  32. # géométrie (index) et attributs en même temps
  33. shapeRec = r.shapeRecord(2)
  34. >>> shapeRec.record[1:3]
  35. [2580.3201100000001,'CRI', 154]
  36. # index, attributs