本文整理汇总了Python中qgis.gui.QgsMapCanvas.layers方法的典型用法代码示例。如果您正苦于以下问题:Python QgsMapCanvas.layers方法的具体用法?Python QgsMapCanvas.layers怎么用?Python QgsMapCanvas.layers使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类qgis.gui.QgsMapCanvas
的用法示例。
在下文中一共展示了QgsMapCanvas.layers方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: ConflictDialog
# 需要导入模块: from qgis.gui import QgsMapCanvas [as 别名]
# 或者: from qgis.gui.QgsMapCanvas import layers [as 别名]
#.........这里部分代码省略.........
self.attributesTable.item(row, 0).setBackgroundColor(Qt.white);
self.attributesTable.item(row, 1).setBackgroundColor(Qt.white);
self.attributesTable.item(row, 2).setBackgroundColor(Qt.white);
attrib = self.attributesTable.item(row, 3).text()
if attrib in self.conflicted:
self.conflicted.remove(attrib)
self.updateSolveButton()
self.showGeoms()
def treeItemClicked(self):
item = self.conflictsTree.selectedItems()[0]
if self.lastSelectedItem == item:
return
if isinstance(item, ConflictItem):
self.lastSelectedItem = item
self.currentPath = item.conflict.path
self.updateCurrentPath()
self.solveLocalButton.setEnabled(True)
self.solveRemoteButton.setEnabled(True)
self.solveButton.setEnabled(False)
def updateCurrentPath(self):
self.solveButton.setEnabled(False)
self.solveLocalButton.setEnabled(False)
self.solveRemoteButton.setEnabled(False)
self.cleanCanvas()
self.showFeatureAttributes()
self.createLayers()
self.showGeoms()
self.zoomToFullExtent()
def zoomToFullExtent(self):
layers = [lay.extent() for lay in self.mapCanvas.layers() if lay.type() == lay.VectorLayer]
if layers:
ext = layers[0]
for layer in layers[1:]:
ext.combineExtentWith(layer)
self.mapCanvas.setExtent(ext)
self.mapCanvas.refresh()
def cleanCanvas(self):
self.mapCanvas.setLayerSet([])
layers = [self.oursLayer, self.theirsLayer]
for layer in layers:
if layer is not None:
QgsMapLayerRegistry.instance().removeMapLayer(layer.id())
self.oursLayer = None
self.theirsLayer = None
def solveAllRemote(self):
ret = QMessageBox.warning(self, "Solve conflict",
"Are you sure you want to solve all conflicts using the 'To merge' version?",
QMessageBox.Yes | QMessageBox.No,
QMessageBox.Yes);
if ret == QMessageBox.Yes:
self.solved = True
self.resolvedConflicts = {c.path:self.REMOTE for c in self.conflicts}
self.close()
def solveAllLocal(self):
ret = QMessageBox.warning(self, "Solve conflict",
"Are you sure you want to solve all conflict using the 'Local' version?",
QMessageBox.Yes | QMessageBox.No,
QMessageBox.Yes);
if ret == QMessageBox.Yes:
示例2: QgsRasterLayer
# 需要导入模块: from qgis.gui import QgsMapCanvas [as 别名]
# 或者: from qgis.gui.QgsMapCanvas import layers [as 别名]
# raster layer
world_wmts_url = "contextualWMSLegend=0&crs=EPSG:4326&dpiMode=7&"\
"featureCount=10&format=image/jpeg&layers=opengeo:countries&"\
"styles=&tileMatrixSet=EPSG:4326&"\
"url=http://suite.opengeo.org/geoserver/gwc/service/wmts?request%3DGetCapabilities"
world_lyr = QgsRasterLayer(world_wmts_url, "Countries", 'wms')
print(world_lyr.isValid())
# vector layer
geojson_contributors = path.join(
path.dirname(QgsApplication.developersMapFilePath()),
'contributors.json')
layer = QgsVectorLayer(geojson_contributors, "QGIS Contributors", "ogr")
layer.setLayerTransparency(35)
print(layer.isValid())
# managing map canvas
map_canvas = QgsMapCanvas(new_dialog)
map_canvas.setMinimumSize(800, 600)
map_canvas.mapRenderer().setDestinationCrs(crs_wgs84)
QgsMapLayerRegistry.instance().addMapLayers([layer, world_lyr], 0)
map_canvas_layer_list = [QgsMapCanvasLayer(layer), QgsMapCanvasLayer(world_lyr)]
map_canvas.setExtent(layer.extent())
map_canvas.setLayerSet(map_canvas_layer_list)
new_dialog.show()
print(dir(map_canvas.map))
print(map_canvas.layers())