当前位置: 首页>>代码示例>>Python>>正文


Python QgsMapCanvas.getCoordinateTransform方法代码示例

本文整理汇总了Python中qgis.gui.QgsMapCanvas.getCoordinateTransform方法的典型用法代码示例。如果您正苦于以下问题:Python QgsMapCanvas.getCoordinateTransform方法的具体用法?Python QgsMapCanvas.getCoordinateTransform怎么用?Python QgsMapCanvas.getCoordinateTransform使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在qgis.gui.QgsMapCanvas的用法示例。


在下文中一共展示了QgsMapCanvas.getCoordinateTransform方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: frmMain

# 需要导入模块: from qgis.gui import QgsMapCanvas [as 别名]
# 或者: from qgis.gui.QgsMapCanvas import getCoordinateTransform [as 别名]

#.........这里部分代码省略.........
            except Exception as e1:
                msg = str(e1) + '\n' + str(traceback.print_exc())
                print(msg)
                QMessageBox.information(None, "Error Initializing Map", msg, QMessageBox.Ok)

        except Exception as eImport:
            self.canvas = None
            print "QGIS libraries not found, Not creating map\n" + str(eImport)
            # QMessageBox.information(None, "QGIS libraries not found", "Not creating map\n" + str(eImport), QMessageBox.Ok)
        self.onLoad()

    def setQgsMapTool(self):
        self.map_widget.setZoomInMode()
        self.map_widget.setZoomOutMode()
        self.map_widget.setPanMode()

    def map_pan(self):
        self.map_widget.setPanMode()

    def zoomfull(self):
        self.map_widget.zoomfull()

    def map_addfeature(self):
        self.map_widget.setAddFeatureMode()

    def onGeometryAdded(self):
        print 'Geometry Added'

    def mouseMoveEvent(self, event):
        pass
        x = event.x()
        y = event.y()
        if self.canvas:
            p = self.canvas.getCoordinateTransform().toMapCoordinates(x, y)
            self.btnCoord.setText('x,y: {:}, {:}'.format(p.x(), p.y()))

    def eventFilter(self, source, event):
        if event.type() == QtCore.QEvent.MouseMove:
            if event.buttons() == QtCore.Qt.NoButton:
                pos = event.pos()
                x = pos.x()
                y = pos.y()
                if self.canvas:
                    p = self.map_widget.canvas.getCoordinateTransform().toMapCoordinates(x, y)
                    self.btnCoord.setText('x,y: %s, %s' % (p.x()), p.y())
            else:
                pass

    def map_addvector(self):
        print 'add vector'
        from frmMapAddVector import frmMapAddVector
        dlg = frmMapAddVector(self)
        dlg.show()
        result = dlg.exec_()
        if result == 1:
            specs = dlg.getLayerSpecifications()
            filename = specs['filename']
            if filename.lower().endswith('.shp'):
                self.map_widget.addVectorLayer(filename)

    def map_addraster(self):
        filename = QtGui.QFileDialog.getOpenFileName(None, 'Specify Raster Dataset', '/')
        if len(filename) > 0:
            self.map_widget.addRasterLayer(filename)

    def on_load(self, tree_top_item_list):
开发者ID:crpAnderson,项目名称:SWMM-EPANET_User_Interface,代码行数:70,代码来源:frmMain.py


注:本文中的qgis.gui.QgsMapCanvas.getCoordinateTransform方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。