管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2024-09-07 8d7a67ab1d635cb954337d8a767878ae526dd3dc
ExportMap/Sources/merge.py
@@ -29,7 +29,7 @@
    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\dem\dem.txt", required=False)
    parser.add_argument("-out", type=str, default=r"D:\xyz\dem\dem\astgtm2.tif", required=False)
    parser.add_argument("-out", type=str, default=r"D:\xyz\dem\out.tif", required=False)
    return parser.parse_args()
@@ -68,6 +68,12 @@
            print("authid: " + args.authid)
            prj.setCrs(layer.crs())
        # for j in range(1, layer.bandCount() + 1):
        #     try:
        #         layer.dataProvider().setNoDataValue(j, 0)
        #     except Exception as e:
        #         print(e)
        prj.addMapLayer(layer)
@@ -81,8 +87,8 @@
        'INPUT': layers,
        'DATA_TYPE': 5,
        'OUTPUT': args.out,
        'NODATA_INPUT': 0,
        'NODATA_OUTPUT': 0,
        # 'NODATA_INPUT': 0,
        # 'NODATA_OUTPUT': 0,
        'OPTIONS': ''
    }
    print(ops)
@@ -104,7 +110,16 @@
    rect = layer.extent()
    x = (rect.xMinimum() + rect.xMaximum()) / 2
    y = (rect.yMinimum() + rect.yMaximum()) / 2
    sid = layer.crs().authid()
    if sid != "EPSG:4490" and sid != "EPSG:4326":
        sid = "EPSG:4490" if layer.crs().toWkt().find("CGCS2000") > -1 else "EPSG:4326"
        transform = QgsCoordinateTransform(QgsCoordinateReferenceSystem(layer.crs().authid()), QgsCoordinateReferenceSystem(sid), prj)
        p = QgsPoint(x, y)
        p.transform(transform)
        x = p.x()
        y = p.y()
    coord = str(x) + ", " + str(y) + ", " + str(sid)
    print(coord)