管道基础大数据平台系统开发-【CS】-ExportMap
1
13693261870
2023-06-21 b4206e4fa15eeb14d3cdda3d738e6a7f9bdc947a
ExportMap/cs/LasUtils.cs
@@ -21,9 +21,9 @@
        /// <summary>
        /// 获取发布地址
        /// </summary>
        public static string GetReleaseUrl(SysMeta meta)
        public static string GetReleaseUrl(string path)
        {
            return "http://{host}/LFData/3d/3dtiles/las/" + meta.id + "/tileset.json";
            return "http://{host}/LFData/" + path.Replace("\\", "/");
        }
        /// <summary>
@@ -50,15 +50,14 @@
                    meta.ismeta = 0; // 0-倾斜摄影数据
                    string outPath = GetPath(meta.id);
                    string jsonFile = Path.Combine(outPath, "tileset.json");
                    if (args.isNew && Directory.Exists(outPath)) Tools.DelPath(outPath);
                    if (Directory.Exists(outPath)) Tools.DelPath(outPath);
                    if (!Directory.Exists(outPath)) Directory.CreateDirectory(outPath);
                    if (File.Exists(jsonFile)) File.Delete(jsonFile);
                    string cmd = string.Format("{0}\\gocesiumtiler.exe -i \"{1}\" -o \"{2}\" -e {3} -z {4} -g -s", tilerPath, lasPath, outPath, args.srid, args.z);
                    err = Tools.ExecCmd(cmd, false, false);
                    string jsonFile = findTileset(outPath);
                    if (File.Exists(jsonFile))
                    {
                        string path = jsonFile.Replace(Tools.GetSetting("lfData") + "\\", "");
@@ -78,13 +77,24 @@
        }
        /// <summary>
        /// 查找tileset.json
        /// </summary>
        private static string findTileset(string path)
        {
            DirectoryInfo di = new DirectoryInfo(path);
            FileInfo[] fis = di.GetFiles("tileset.json", SearchOption.AllDirectories);
            return null == fis || 0 == fis.Length ? null : fis[0].FullName;
        }
        /// <summary>
        /// 插入数据库
        /// </summary>
        private static int InsertToDB(SysMeta meta, XYZArgs args, string path)
        {
            if (PubDBHelper.IsPublish(meta.id)) return 0;
            SysPublish sys = Tools.NewPublish(meta, args, GetReleaseUrl(meta), path);
            SysPublish sys = Tools.NewPublish(meta, args, GetReleaseUrl(path), path);
            int pubid = PubDBHelper.InsertPublish(sys);
            if (pubid > 0)