FIX: Attribute wurde nicht direkt angezeigt
This commit is contained in:
parent
fb740f4895
commit
1d1aeb68cd
16
po_runner.py
16
po_runner.py
@ -31,13 +31,15 @@ class PoRunner(object):
|
||||
def loadStations(self):
|
||||
print("loadStations")
|
||||
reader = PoQgsStations()
|
||||
self.stations = self._layerFromReader(reader.fields, reader.crs, reader.getStationsFeatures(), "Stationen")
|
||||
features = reader.getStationsFeatures()
|
||||
self.stations = self._layerFromReader(reader.fields, reader.crs, features, "Stationen")
|
||||
self._layerShow(self.stations, "styles/label_stations.qml", self.disconnectStations)
|
||||
|
||||
def loadWaterlevels(self):
|
||||
print("loadWaterlevels")
|
||||
reader = PoQgsCurrentW()
|
||||
self.waterlevels = self._layerFromReader(reader.fields, reader.crs, reader.getCurrentWFeatures(), "Wasserstandinformationen")
|
||||
features = reader.getCurrentWFeatures()
|
||||
self.waterlevels = self._layerFromReader(reader.fields, reader.crs, features, "Wasserstandinformationen")
|
||||
self._layerShow(self.waterlevels, "styles/label_currentw.qml", self.disconnectWaterlevels)
|
||||
|
||||
def _layerFromReader(self, fields, crs, features, title) -> None | QgsVectorLayer:
|
||||
@ -49,13 +51,15 @@ class PoRunner(object):
|
||||
print("layer_path: " + layer_path)
|
||||
|
||||
layer = QgsVectorLayer(layer_path, title, "memory")
|
||||
layer.updateFields()
|
||||
layer.updateExtents()
|
||||
layer.commitChanges()
|
||||
|
||||
provider = layer.dataProvider()
|
||||
|
||||
provider.addAttributes(fields)
|
||||
layer.updateFields()
|
||||
|
||||
provider.addFeatures(features)
|
||||
layer.updateExtents()
|
||||
|
||||
layer.commitChanges()
|
||||
|
||||
if layer.isValid():
|
||||
return layer
|
||||
|
||||
@ -9,17 +9,18 @@ class PoQgsCurrentW(PoCurrentW):
|
||||
|
||||
def __init__(self):
|
||||
super().__init__()
|
||||
self.fields = None
|
||||
self.crs = QgsCoordinateReferenceSystem(4326, QgsCoordinateReferenceSystem.EpsgCrsId)
|
||||
|
||||
def getCurrentWFeatures(self):
|
||||
print("getCurrentWFeatures: Erzeuge Features...")
|
||||
|
||||
self.fields = QgsFields()
|
||||
self.fields.append(QgsField('timestamp', QVariant.DateTime))
|
||||
self.fields.append(QgsField('value', QVariant.Double))
|
||||
self.fields.append(QgsField('stateMnwMhw', QVariant.String))
|
||||
self.fields.append(QgsField('stateNswHsw', QVariant.String))
|
||||
|
||||
def getCurrentWFeatures(self):
|
||||
print("getCurrentWFeatures: Erzeuge Features...")
|
||||
|
||||
features = []
|
||||
for station in self.getCurrentW():
|
||||
feature = self._getFeatureForStation(station)
|
||||
@ -29,13 +30,12 @@ class PoQgsCurrentW(PoCurrentW):
|
||||
return features
|
||||
|
||||
def _getFeatureForStation(self, station):
|
||||
feature = QgsFeature()
|
||||
feature = QgsFeature(self.fields)
|
||||
|
||||
longitude = station['geometry']['longitude']
|
||||
latitude = station['geometry']['latitude']
|
||||
feature.setGeometry(QgsGeometry.fromPointXY(QgsPointXY(longitude, latitude)))
|
||||
|
||||
feature.setFields(self.fields)
|
||||
feature.setAttribute('timestamp', station['attributes']['timestamp'])
|
||||
feature.setAttribute('value', station['attributes']['value'])
|
||||
feature.setAttribute('stateMnwMhw', station['attributes']['stateMnwMhw'])
|
||||
|
||||
@ -9,8 +9,12 @@ class PoQgsStations(PoStations):
|
||||
|
||||
def __init__(self):
|
||||
PoStations.__init__(self)
|
||||
self.fields = None
|
||||
self.crs = QgsCoordinateReferenceSystem(4326, QgsCoordinateReferenceSystem.EpsgCrsId)
|
||||
|
||||
def getStationsFeatures(self):
|
||||
print("getStationsFeatures: Erzeuge Features...")
|
||||
|
||||
self.fields = QgsFields()
|
||||
self.fields.append(QgsField('uuid', QVariant.String))
|
||||
self.fields.append(QgsField('number', QVariant.Int))
|
||||
@ -20,9 +24,6 @@ class PoQgsStations(PoStations):
|
||||
self.fields.append(QgsField('agency', QVariant.String))
|
||||
self.fields.append(QgsField('water', QVariant.String))
|
||||
|
||||
def getStationsFeatures(self):
|
||||
print("getStationsFeatures: Erzeuge Features...")
|
||||
|
||||
features = []
|
||||
for station in self.getStations():
|
||||
feature = self._getFeatureForStation(station)
|
||||
@ -32,13 +33,12 @@ class PoQgsStations(PoStations):
|
||||
return features
|
||||
|
||||
def _getFeatureForStation(self, station) -> QgsFeature:
|
||||
feature = QgsFeature()
|
||||
feature = QgsFeature(self.fields)
|
||||
|
||||
longitude = station['geometry']['longitude']
|
||||
latitude = station['geometry']['latitude']
|
||||
feature.setGeometry(QgsGeometry.fromPointXY(QgsPointXY(longitude, latitude)))
|
||||
|
||||
feature.setFields(self.fields)
|
||||
feature.setAttribute('uuid', station['attributes']['uuid'])
|
||||
feature.setAttribute('number', station['attributes']['number'])
|
||||
feature.setAttribute('shortname', station['attributes']['shortname'])
|
||||
|
||||
Loading…
Reference in New Issue
Block a user