| | |
| | | from qgis.PyQt.QtCore import * |
| | | from qgis.PyQt.QtWidgets import * |
| | | from processing.core.Processing import Processing |
| | | import processing |
| | | |
| | | |
| | | # 获取完整路径 |
| | |
| | | print("argv = ", sys.argv[1:]) |
| | | parser = argparse.ArgumentParser(description='ArgUtils') |
| | | parser.add_argument("-src", type=str, default=get_full_path(), required=False) |
| | | parser.add_argument("-qgz", type=str, default="xyz.qgz", required=False) |
| | | parser.add_argument("-qgz", type=str, default="xyz2.qgz", required=False) |
| | | parser.add_argument("-file", type=str, default=r"D:\xyz\tiles.txt", required=False) |
| | | parser.add_argument("-out", type=str, default=r"D:\xyz\tiles\zy", required=False) |
| | | |
| | |
| | | |
| | | # 加载图层 |
| | | def loadLayers(prj, args): |
| | | for layer in prj.mapLayers().values(): |
| | | prj.removeMapLayer(layer) |
| | | |
| | | lines = readTxt(args.file) |
| | | for i in range(0, len(lines)): |
| | | line = lines[i] |
| | |
| | | layer = QgsRasterLayer(line, "layer_" + str(i)) |
| | | if not layer.isValid(): |
| | | print("layer_" + str(i) + ": failed to load!") |
| | | continue |
| | | |
| | | prj.addMapLayer(layer) |
| | | |
| | | for layer in prj.mapLayers().values(): |
| | | print(layer.name()) |
| | | |
| | | # 初始化 |
| | | def init(): |
| | | # QgsApplication.setPrefixPath("C:\Program Files\QGIS 3.16", True) |
| | | qgs = QgsApplication([], True) |
| | | qgs = QgsApplication([], False) |
| | | Processing.initialize() |
| | | qgs.initQgis() |
| | | |
| | |
| | | |
| | | loadLayers(project, args) |
| | | |
| | | import processing |
| | | ops = { |
| | | 'BACKGROUND_COLOR': QColor(0, 0, 0, 0), |
| | | 'DPI': 96, |
| | |
| | | 'TILE_HEIGHT': 256, |
| | | 'TILE_WIDTH': 256, |
| | | 'TMS_CONVENTION': True, |
| | | 'ZOOM_MAX': 8, |
| | | 'ZOOM_MIN': 8 |
| | | 'ZOOM_MAX': 12, |
| | | 'ZOOM_MIN': 12 |
| | | } |
| | | processing.run("qgis:tilesxyzdirectory", ops) |
| | | |