| | |
| | | flag = layer.name() in show_layers |
| | | print(layer.name() + ": " + str(flag)) |
| | | # if not flag: |
| | | # project.removeMapLayer(layer) |
| | | # prj.removeMapLayer(layer) |
| | | layer.setValid(flag) |
| | | |
| | | |
| | |
| | | node.setItemVisibilityChecked(flag) |
| | | |
| | | |
| | | # 添加底图:layer.isValid(),layer.metadataUri(),layer.providerType() |
| | | def add_map_layer(prj, layout, args): |
| | | wms_url = layout.customProperty("wmsUrl") |
| | | if wms_url is None: |
| | | print("WmsUrl is None.") |
| | | return |
| | | |
| | | url = "crs=ESRI:104903&dpiMode=7&format=image/png&layers=Default&styles=default&tileMatrixSet=GoogleCRS84Quad01&url=" + wms_url |
| | | print("WMS地址:" + url) |
| | | |
| | | layer = QgsRasterLayer(url, "WmsLayer", "wms") |
| | | prj.addMapLayer(layer) |
| | | |
| | | |
| | | # 初始化 |
| | | # QgsApplication.setPrefixPath(r"E:/terrait/TianJin/LFServer/QGIS/", True) |
| | | qgs = QgsApplication([], False) |
| | |
| | | |
| | | # 加载工程 |
| | | args = get_args() |
| | | project = QgsProject.instance() |
| | | # project.read(r'Test.qgz') |
| | | project.read(os.path.join(args.src, args.qgz)) |
| | | print("FileName: " + project.fileName()) |
| | | prj = QgsProject.instance() |
| | | # prj.read(r'Test.qgz') |
| | | prj.read(os.path.join(args.src, args.qgz)) |
| | | print("FileName: " + prj.fileName()) |
| | | |
| | | # layout = QgsPrintLayout(project) |
| | | layout = QgsLayout(project) |
| | | # layout = QgsPrintLayout(prj) |
| | | layout = QgsLayout(prj) |
| | | # layout.initializeDefaults() |
| | | |
| | | # 加载模板 |
| | |
| | | # "阀室", "站场", "管道中心线", "矢量注记", "矢量图", "高德影像注记", "高德影像", "影像注记", "影像图" |
| | | # showLayers = ["阀室", "管道中心线", "矢量注记", "矢量图"] |
| | | showLayers = layout.customProperty("layers").split(',') |
| | | root = project.layerTreeRoot() |
| | | # set_layers_valid(project, showLayers) |
| | | root = prj.layerTreeRoot() |
| | | |
| | | # set_layers_valid(prj, showLayers) |
| | | set_item_visibility(root, showLayers) |
| | | add_map_layer(prj, layout, args) |
| | | |
| | | # sm = layout.itemById(r'说明') |
| | | '''table = layout.multiFrames()[0] |