| | |
| | | { |
| | | public class XYZUtils |
| | | { |
| | | |
| | | private static string pyFile; |
| | | |
| | | /// <summary> |
| | |
| | | /// <returns>数据发布ID</returns> |
| | | public static int Generate(XYZArgs args, ref string err) |
| | | { |
| | | string tifFile = Path.Combine(ExportUtil.SourcesPath, ExportUtil.DateStr + ".txt"); |
| | | string tifFile = Path.Combine(Tool.TempDir, ExportUtil.DateStr + ".txt"); |
| | | string xyzPath = Path.Combine(SGUtils.LFData, "2d\\tiles", args.id.ToString()); |
| | | if (!Directory.Exists(xyzPath)) Directory.CreateDirectory(xyzPath); |
| | | |
| | | string cmd = string.Format("python {0} -qgz {1} -file {2} -out {3} -min {4} -max {5}", PyFile, Qgz, tifFile, xyzPath, args.min, args.max); |
| | | List<SysMeta> list = selectMetas(args.ids, "and type in ('tif', 'tiff', 'img')"); |
| | | if (null == list || list.Count == 0) return 0; |
| | | |
| | | WriteText(tifFile, list); |
| | | |
| | | string cmd = string.Format("python \"{0}\" -qgz {1} -file \"{2}\" -out \"{3}\" -min {4} -max {5}", PyFile, Qgz, tifFile, xyzPath, args.min, args.max); |
| | | err = Tool.ExecCmd(cmd, true); |
| | | |
| | | if (File.Exists(tifFile)) File.Delete(tifFile); |
| | | |
| | | return args.id; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 查询元数据 |
| | | /// </summary> |
| | | public static List<SysMeta> selectMetas(string dircode) |
| | | { |
| | | string sql = string.Format("select * from lf.sys_meta where dircode like '{0}%'", dircode); |
| | | |
| | | DataTable dt = Tool.DBHelper.GetDataTable(sql); |
| | | List<SysMeta> list = ModelHandler.FillModel<SysMeta>(dt); |
| | | |
| | | return list; |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | |
| | | return list; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 写文本文件 |
| | | /// </summary> |
| | | private static void WriteText(string file, List<SysMeta> list) |
| | | { |
| | | string uploadFolder = Tool.GetSetting("uploadFolder"); |
| | | |
| | | List<string> files = new List<string>(); |
| | | foreach (SysMeta meta in list) |
| | | { |
| | | files.Add(Path.Combine(uploadFolder, meta.path)); |
| | | } |
| | | string str = string.Join("\n", files); |
| | | |
| | | File.WriteAllText(file, str); |
| | | } |
| | | } |
| | | } |