Advertisement
Guest User

Untitled

a guest
Apr 5th, 2020
176
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.07 KB | None | 0 0
  1. # Konwertujemy m^2 do km^2
  2. def convert_m2_to_km2(liczba):
  3.     return liczba/10**6
  4.  
  5. # Szukamy listę województw oraz listę powierzchni
  6. def get_data(vlayer, nr=6):
  7.  
  8.     names = []
  9.     areas = []
  10.    
  11.     d = qgis.core.QgsDistanceArea()
  12.     d.setEllipsoid('GRS80')
  13.     d.setEllipsoidalMode(True)
  14.    
  15.     # Dostawca danych:
  16.     provider = vlayer.dataProvider()
  17.    
  18.     # Pobranie wszystkich obiektów:
  19.     feature_list = provider.getFeatures()
  20.  
  21.     # Potrzebujemy wartości True, aby pętla się wykonała:
  22.     feat = qgis.core.QgsFeature()
  23.    
  24.     # Iteracyjne pobieranie informacji o poszczególnych elementach (według konfiguracji dostarczonej przez funkcję select)
  25.     while feature_list.nextFeature(feat):
  26.      
  27.         # Pobranie listy atrybutów danego elementu:
  28.         attrs = feat.attributes()
  29.         names.append(attrs[nr].encode('utf-8'))
  30.        
  31.         # Otrzymujemy powierzchnie w m^2, żeby było w km^2 konwertujemy
  32.         area = convert_m2_to_km2(d.measure(feat.geometry()))
  33.         areas.append(area)
  34.        
  35.     return names, areas
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement