From 806530353c16034802fe60b922c3a9a64e16e729 Mon Sep 17 00:00:00 2001 From: Benjamin Jakimow <benjamin.jakimow@client193-234.wlan.hu-berlin.de> Date: Tue, 21 Feb 2017 08:35:28 +0100 Subject: [PATCH] settingsdialog.ui replaced QDeclarative by ParameterTree widget --- timeseriesviewer/timeseries.py | 41 +++++--------------------- timeseriesviewer/ui/icons/system.png | Bin 2122 -> 129 bytes timeseriesviewer/ui/settingsdialog.ui | 14 ++++++--- 3 files changed, 18 insertions(+), 37 deletions(-) diff --git a/timeseriesviewer/timeseries.py b/timeseriesviewer/timeseries.py index cffe9f21..d2f5d795 100644 --- a/timeseriesviewer/timeseries.py +++ b/timeseriesviewer/timeseries.py @@ -232,7 +232,7 @@ def verifyInputImage(path, vrtInspection=''): print('{}GDAL unable to open: '.format(vrtInspection, path)) return False if ds.GetDriver().ShortName == 'VRT': - vrtInspection = 'Inspection {}\n'.format(path) + vrtInspection = 'VRT Inspection {}\n'.format(path) validSrc = [verifyInputImage(p, vrtInspection=vrtInspection) for p in set(ds.GetFileList()) - set([path])] return all(validSrc) else: @@ -263,25 +263,22 @@ class TimeSeriesDatum(QObject): - def __init__(self, timeSeries, pathImg, pathMsk=None): + def __init__(self, timeSeries, lyr, pathMsk=None): super(TimeSeriesDatum,self).__init__() - assert os.path.exists(pathImg) + assert isinstance(lyr, QgsRasterLayer) + assert lyr.isValid() + + self.lyrImg = lyr self.timeSeries = timeSeries - self.pathImg = pathImg - self.pathMsk = None - assert os.path.exists(pathImg) - self.lyrImg = QgsRasterLayer(pathImg, os.path.basename(pathImg), False) - assert self.lyrImg.isValid() - self.uriImg = self.lyrImg.dataProvider().dataSourceUri() + self.pathImg = self.lyrImg.dataProvider().dataSourceUri() self.crs = self.lyrImg.dataProvider().crs() self.sensor = SensorInstrument(self.lyrImg) - self.date = getImageDate(self.lyrImg) + self.date = getImageDate(self.lyr) self.doy = getDOYfromDate(self.date) assert self.date is not None, 'Unable to find acquisition date of {}'.format(pathImg) - self.ns = self.lyrImg.width() self.nl = self.lyrImg.height() self.nb = self.lyrImg.bandCount() @@ -289,9 +286,6 @@ class TimeSeriesDatum(QObject): self.mVisibility = True - if pathMsk: - self.setMask(pathMsk) - def rank(self): return self.timeSeries.index(self) @@ -568,25 +562,6 @@ def getImageDate(lyr): return date -def PFunc_TimeSeries_getSpatialChip(TSD, bbWkt, srsWkt , bands=[4,5,3]): - - chipdata = TSD.readSpatialChip(bbWkt, srs=srsWkt, bands=bands) - - return TSD, chipdata - -def px2Coordinate(gt, pxX, pxY, upper_left=True): - cx = gt[0] + pxX*gt[1] + pxY*gt[2] - cy = gt[3] + pxX*gt[4] + pxY*gt[5] - if not upper_left: - cx += gt[1]*0.5 - cy += gt[5]*0.5 - return cx, cy - -def coordinate2px(gt, cx, cy): - px = int((cx - gt[0]) / gt[1]) - py = int((cy - gt[3]) / gt[5]) - return px, py - regYYYYDOY = re.compile(r'(19|20)\d{5}') regYYYYMMDD = re.compile(r'(19|20)\d{2}-\d{2}-\d{2}') diff --git a/timeseriesviewer/ui/icons/system.png b/timeseriesviewer/ui/icons/system.png index a3d259ece803d499a53b5794d84753b53a767bb2..a9bac086db6b73c269eb5d3b0120806f0bba2e27 100644 GIT binary patch literal 129 zcmWN?OA^8$3;@tQr{Dq>lJZM$Lun9ZR5}K`@bvmN@8Y-g@zQP1Q#NDnecm2bmjCUu zFJ(N9oLtNWYV<=(%jm;qGeaVWH5>qG&prcib;*T9Im8$X5tVEm<7y!~2oVUa2aZfD M6(#-48Ua!L0F`qk>i_@% literal 2122 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 A#Q*>R diff --git a/timeseriesviewer/ui/settingsdialog.ui b/timeseriesviewer/ui/settingsdialog.ui index f2ba2b0b..d9930d6b 100644 --- a/timeseriesviewer/ui/settingsdialog.ui +++ b/timeseriesviewer/ui/settingsdialog.ui @@ -15,7 +15,13 @@ </property> <layout class="QVBoxLayout" name="verticalLayout"> <item> - <widget class="QDeclarativeView" name="declarativeView"/> + <widget class="ParameterTree" name="treeWidget"> + <column> + <property name="text"> + <string notr="true">1</string> + </property> + </column> + </widget> </item> <item> <widget class="QDialogButtonBox" name="buttonBox"> @@ -31,9 +37,9 @@ </widget> <customwidgets> <customwidget> - <class>QDeclarativeView</class> - <extends>QGraphicsView</extends> - <header>QtDeclarative/QDeclarativeView</header> + <class>ParameterTree</class> + <extends>QTreeWidget</extends> + <header>pyqtgraph.parametertree</header> </customwidget> </customwidgets> <resources/> -- GitLab