[Qgis-developer] update plugin to QGIS 2.0

Marc Jansen jansen at terrestris.de
Thu Aug 1 10:35:22 PDT 2013


Hi otto,

A super wild guess: whats the value of IdentifyFormat in your call?

Hth,
Marc



Otto Dassau <dassau at gbd-consult.de> schrieb:
>Hi,
>
>I want to update a plugin from 1.8 to QGIS 2.0 and it throws following
>error:
>
>Traceback (most recent call last):
>File
>  
>"/home/dassau/.qgis2/python/plugins/weibullanalyse/weibullanalysedialog.py",
> 
>line 447, in printValue self.showValues() File
>  
>"/home/dassau/.qgis2/python/plugins/weibullanalyse/weibullanalysedialog.py",
> 
>line 453, in showValues self.plot() File
>  
>"/home/dassau/.qgis2/python/plugins/weibullanalyse/weibullanalysedialog.py",
> 
>line 514, in plot w =
>float(self.sampleRaster(self.InRastW.currentText(),
>self.xCoord, self.yCoord))/10 File
>  
>"/home/dassau/.qgis2/python/plugins/weibullanalyse/weibullanalysedialog.py",
> 
>line 299, in sampleRaster return self.sampleRaster20(layer, x, y) File
>  
>"/home/dassau/.qgis2/python/plugins/weibullanalyse/weibullanalysedialog.py",
> 
>line 284, in sampleRaster20 success, data =
>layer.dataProvider().identify(QgsPoint(x,y))
>
>TypeError:
>QgsRasterDataProvider.identify(QgsPoint, QgsRaster.IdentifyFormat,
>QgsRectangle theExtent=QgsRectangle(), int theWidth=0, int
>theHeight=0):
>not enough arguments
>
>I found at
>http://hub.qgis.org/wiki/quantum-gis/API_changes_for_version_20
>the section QgsRasterDataProvider which should fit. And the Method,
>where I
>assume the error occurs should be this
>
># get value at mouse position QGIS <= 1.8 (working for 1.8)
>def sampleRaster18(self, layer, x, y):
>   success, data = layer.identify(QgsPoint(x,y))
>   for band, value in data.items():
>     return value
>
>now what I tried but doesn't work (see error above)
>
># get value at mouse position QGIS >= 2.0 (not working yet :()
>def sampleRaster20(self, layer, x, y):
>   success, data = layer.dataProvider().identify(QgsPoint(x,y))
>   for band, value in data.items():
>     return value
>
>my problem is, that I don't understand how to implement in
>sampleRaster20
>the new method from the API_changes_for_version_20 website which says:
>
>QMap<int, QVariant> identify( const QgsPoint & thePoint, IdentifyFormat
>theFormat, const QgsRectangle &theExtent = QgsRectangle(), int theWidth
>=
>0, int theHeight = 0 )
>
>can anybody help?
>
>Thanks 
>
>Otto
>_______________________________________________
>Qgis-developer mailing list
>Qgis-developer at lists.osgeo.org
>http://lists.osgeo.org/mailman/listinfo/qgis-developer
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20130801/f46eac6e/attachment-0001.html>


More information about the Qgis-developer mailing list