[QGIS-Developer] Get canvas scale wrong (qgis 2.18)
Công Nam Phạm
andrewpham.freelancer at gmail.com
Thu Apr 5 00:45:25 PDT 2018
if try get *scale map, coordinate mouse *(lon, lat) but wrong value. my
code:
*def init.....*
*........*
self.canvas.useImageToRender(False)
self.canvas.setWheelAction(0,1.5)
self.canvas.MinScale = 50000000
self.canvas.MaxScale = 500000
self.canvas.setCanvasColor(QColor('#484848'))
self.canvas.setContextMenuPolicy(Qt.CustomContextMenu)
self.canvas.mapRenderer().setProjectionsEnabled(True)
self.crs = QgsCoordinateReferenceSystem()
self.crs.createFromProj4("+proj=lcc +lat_1=15 +lat_2=45 +lat_0=30
+lon_0=107 +x_0=0 +y_0=0 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m
+no_defs")
self.canvas.setDestinationCrs(self.crs)
self.canvas.mapRenderer().setDestinationCrs(self.crs)
self.canvas.setMapUnits(5)
self.canvas.scaleChanged.connect(self.scaletitle)
........
*def load layer*
self.layers = []
self.cur_dir = os.path.dirname(os.path.realpath(__file__))
#-------------------------------------------------------------
self.layerfilename = os.path.join(self.cur_dir,dataLayer_Tinh[8])
self.layer = QgsVectorLayer(self.layerfilename, dataLayer_Tinh[1],
"ogr")
self.layer.setCrs(self.crs)
QgsMapLayerRegistry.instance().addMapLayer(self.layer)
self.layer_Tinh = QgsMapCanvasLayer(self.layer)
#-------------------------------------------------------------
self.layerfilename = os.path.join(self.cur_dir,dataLayer_Kinhvi[8])
self.layer = QgsVectorLayer(self.layerfilename,
dataLayer_Kinhvi[1], "ogr")
self.layer.setCrs(self.crs)
QgsMapLayerRegistry.instance().addMapLayer(self.layer)
self.layer_Kinhvi = QgsMapCanvasLayer(self.layer)
self.canvas.setLayerSet(self.layers)
self.canvas.setExtent(self.layer.extent())
*def scaletitle(self):*
print self.canvas.scale()
self.label_44.setText(str(self.canvas.scale()))
*And result scale:*
*3.25806053965e+13*
*2.63002028251e+13*
*1.63293972509e+13*
*6.74310162649e+12*
*2.53595988062e+12*
*4.48356555003e+12*
* Thanks for helping me *
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/qgis-developer/attachments/20180405/6acc05d7/attachment.html>
More information about the QGIS-Developer
mailing list