From a42b292673e42cc8f3635c59e1ef80d8dbac773e Mon Sep 17 00:00:00 2001 From: 13693261870 <252740454@qq.com> Date: 星期五, 21 四月 2023 15:24:55 +0800 Subject: [PATCH] 1 --- ExportMap/Sources/xyz.py | 29 +++++++++++++++++------------ 1 files changed, 17 insertions(+), 12 deletions(-) diff --git a/ExportMap/Sources/xyz.py b/ExportMap/Sources/xyz.py index 30a053c..f1afa7b 100644 --- a/ExportMap/Sources/xyz.py +++ b/ExportMap/Sources/xyz.py @@ -28,10 +28,10 @@ parser = argparse.ArgumentParser(description='ArgUtils') parser.add_argument("-src", type=str, default=get_full_path(), required=False) parser.add_argument("-qgz", type=str, default=r"xyz.qgz", required=False) - parser.add_argument("-file", type=str, default=r"D:\xyz\4.5g\tif.txt", required=False) - parser.add_argument("-out", type=str, default=r"D:\xyz\4.5g\png", required=False) - parser.add_argument("-min", type=int, default=12, required=False) - parser.add_argument("-max", type=int, default=18, required=False) + parser.add_argument("-file", type=str, default=r"D:\xyz\china\tif.txt", required=False) + parser.add_argument("-out", type=str, default=r"D:\xyz\china\png", required=False) + parser.add_argument("-min", type=int, default=4, required=False) + parser.add_argument("-max", type=int, default=8, required=False) parser.add_argument("-noData", type=int, default=0, required=False) return parser.parse_args() @@ -54,6 +54,7 @@ for layer in prj.mapLayers().values(): prj.removeMapLayer(layer) + args.authid = None lines = readTxt(args.file) for i in range(0, len(lines)): if len(lines[i]) == 0: @@ -66,6 +67,8 @@ continue if len(prj.mapLayers()) == 0: + args.authid = layer.crs().authid() + print("authid: " + args.authid) prj.setCrs(layer.crs()) for j in range(1, layer.bandCount() + 1): @@ -84,11 +87,11 @@ # 鑾峰彇杈圭晫 -def getExtent(prj): +def getExtent(prj, args): ex = None for layer in prj.mapLayers().values(): rect = layer.extent() - print(layer.name() + ", " + rect.toString()) + print(layer.name() + ", " + rect.toString() + ", " + layer.crs().authid()) if ex is None: ex = Rectangle(rect.xMinimum(), rect.xMaximum(), rect.yMinimum(), rect.yMaximum()) @@ -103,8 +106,8 @@ if rect.yMaximum() > ex.ymax: ex.ymax = rect.yMaximum() - # '38399769,38403264,3558330,3561632' - return str(ex.xmin) + "," + str(ex.xmax) + "," + str(ex.ymin) + "," + str(ex.ymax) + # '-3640.3675,1734588.1947,2434663.1477,3677421.7047 [EPSG:32643]' + return str(ex.xmin) + "," + str(ex.xmax) + "," + str(ex.ymin) + "," + str(ex.ymax) + ' [' + args.authid + "]" # 鑾峰彇杈圭晫2 @@ -122,7 +125,7 @@ # 鑾峰彇XYZ鍙傛暟 def getXYZOps(args): - return { + ops = { 'BACKGROUND_COLOR': QColor(0, 0, 0, 0), 'DPI': 96, 'EXTENT': args.ext, @@ -138,6 +141,9 @@ 'ZOOM_MAX': args.max, 'ZOOM_MIN': args.min } + print(ops) + + return ops # 鍒涘缓XYZ鐡︾墖 @@ -145,8 +151,7 @@ import processing ops = getXYZOps(args) - print(ops) - processing.run("qgis:tilesxyzdirectory", ops) + # processing.run("qgis:tilesxyzdirectory", ops) # 鍒濆鍖� @@ -165,7 +170,7 @@ loadLayers(prj, args) # prj.write(args.file.replace(".txt", ".qgz")) - args.ext = getExtent(prj) + args.ext = getExtent(prj, args) createXYZ(args) qgs.exitQgis() -- Gitblit v1.9.3