| | |
| | | /// </summary> |
| | | public static string GetReleaseUrl(string dircode) |
| | | { |
| | | return "http://{host}/LFData/2d/tiles/" + dircode + "/{z}/{x}/{y}.png"; |
| | | return "http://{host}/LFData/3d/terrain/" + dircode; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// <returns>数据发布ID集合</returns> |
| | | public static List<int> Generate(XYZArgs args, ref string err) |
| | | { |
| | | string tifFile = Merge(args, ref err); |
| | | |
| | | |
| | | return null; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 合并 |
| | | /// </summary> |
| | | public static string Merge(XYZArgs args, ref string err) |
| | | { |
| | | string txtFile = null; |
| | | try |
| | | { |
| | | List<SysMeta> list = XYZUtils.SelectMetas(args.ids, "and type in ('tif', 'tiff')"); |
| | | if (null == list || list.Count == 0) return null; |
| | | |
| | | txtFile = Path.Combine(Tools.TempDir, ExportUtil.DateStr + ".txt"); |
| | | string dirPath = Path.Combine(SGUtils.LFData, "3d\\terrain", args.dircode); |
| | | if (!Directory.Exists(dirPath)) Directory.CreateDirectory(dirPath); |
| | | |
| | | string tifFile = Path.Combine(dirPath, dirPath + ".tif"); |
| | | if (File.Exists(tifFile)) File.Delete(tifFile); |
| | | |
| | | WriteText(txtFile, list); |
| | | |
| | | string cmd = string.Format("python \"{0}\" -qgz {1} -file \"{2}\" -out \"{3}\"", PyFile, Qgz, txtFile, tifFile); |
| | | err = Tools.ExecCmd(cmd, true); |
| | | |
| | | return tifFile; |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | err = ex.Message; |
| | | return null; |
| | | } |
| | | finally |
| | | { |
| | | if (!string.IsNullOrEmpty(txtFile) && File.Exists(txtFile)) |
| | | { |
| | | File.Delete(txtFile); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 写文本文件 |
| | | /// </summary> |
| | | private static void WriteText(string txtFile, List<SysMeta> list) |
| | | { |
| | | string uploadFolder = Tools.GetSetting("uploadFolder"); |
| | | |
| | | List<string> files = new List<string>(); |
| | | foreach (SysMeta meta in list) |
| | | { |
| | | string filePath = Path.Combine(uploadFolder, meta.path); |
| | | if (File.Exists(filePath)) files.Add(filePath); |
| | | } |
| | | string str = string.Join("\n", files); |
| | | |
| | | File.WriteAllText(txtFile, str); |
| | | } |
| | | } |
| | | } |