管道基础大数据平台系统开发-【CS】-ExportMap
13693261870
2024-09-03 3cfb6aa02516135fb174ab1b30620f2007924663
ExportMap/cs/TerraUtils.cs
@@ -38,7 +38,7 @@
        /// <summary>
        /// 默认最大文件大小:5GB
        /// </summary>
        public static long DDEFAULT_MAX_SIZE = 5L * 1024 * 1024 * 1024;
        public static long DEFAULT_MAX_SIZE = 5L * 1024 * 1024 * 1024;
        /// <summary>
        /// 获取Python文件
@@ -96,7 +96,7 @@
        /// </summary>
        public static string GetReleaseUrl(string dircode)
        {
            return "http://{host}/LFData/3d/terrain/" + dircode;
            return "{host}/LFData/3d/terrain/" + dircode;
        }
        /// <summary>
@@ -119,20 +119,32 @@
            try
            {
                List<SysMeta> metas = XYZUtils.SelectMetas(args.ids, "and type in ('tif', 'tiff')");
                if (null == metas || metas.Count == 0) return null;
                if (null == metas || metas.Count == 0)
                {
                    LogOut.Info("TerraUtils:找不到元数据。");
                    return null;
                }
                string dirPath = GetTerrainPath(args.dircode);
                //if (Directory.Exists(dirPath)) Tools.DelPath(dirPath); // 已存在的,删除
                tifFile = Merge(metas, args, ref err);
                if (!File.Exists(tifFile)) return null;
                if (!File.Exists(tifFile))
                {
                    LogOut.Info("TerraUtils:找不到tifFile数据。");
                    return null;
                }
                string json = Path.Combine(dirPath, "layer.json");
                if (File.Exists(json)) File.Delete(json);
                //Generate(args, tifFile, ref err);
                CreateTerrain(args, tifFile, ref err);
                if (!File.Exists(json)) return null;
                if (!File.Exists(json))
                {
                    LogOut.Info("TerraUtils:找不到layer.json文件。");
                    return null;
                }
                Complement(args);
                List<int> ids = new List<int>();
@@ -196,7 +208,7 @@
                err = Tools.ExecCmd(task, cmd, true);
                task = TaskDBHelper.SelectById(task.id);
                if (null == task || task.status != 2) return string.Empty;
                if (null == task || task.status != 2) LogOut.Info("TerraUtils:任务为空或状态不为2。");
                return tifFile;
            }
@@ -242,7 +254,7 @@
        private static int GetTerrainMaxLevel(XYZArgs args, string tifFile)
        {
            FileInfo fi = new FileInfo(tifFile);
            if (fi.Length > DDEFAULT_MAX_SIZE) return TERRAIN_MAX_LEVEL;
            if (fi.Length > DEFAULT_MAX_SIZE) return TERRAIN_MAX_LEVEL;
            string ctbPath = Tools.GetSetting("ctbPath");
            string dirPath = GetTerrainPath(args.dircode);