如何通过C#开发调用Skyline软件中提供的小工具
Posted 喜欢GIS
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何通过C#开发调用Skyline软件中提供的小工具相关的知识,希望对你有一定的参考价值。
熟悉Skyline的朋友会知道,在TerraBuilder和TerraExplorer Pro软件的安装目录里,提供了很多个小工具(exe程序);
虽然我们看不到这些小工具的源代码,但我们还是可以在自定义的开发环境中来调用它们的;
尤其是可以用来实现一些批量化操作和自动化操作;
常用的小工具:
MakeXpl.exe;
MakeCPT.exe;
Triangulate Irregular Elevation Grid.exe;
Convert XYZ ASCII Elevation.exe;
Convert Z ASCII Elevation.exe;
Gather Tiled Files.exe;
Split and Merge MPU-MPT files.exe
......
用C#调用cmd执行命令,网上可以找到很多使用的方法和参数的设置示例代码;
#region "运行工具将XYZ转换成TRI" //运行工具将XYZ转换成TRI //赵贺 2016.8.19 //输入XYZ文件路径和TRI文件路径及采样精度 private void XYZtoTRI(String inputFile, String outputFile, Double resolution) { String programName = TempDataPath + @"\\ttd.exe"; ; String cmd = "\\"" + programName + "\\"" + " -InputFile " + inputFile + " -OutputFile " + outputFile + " -Resolution " + resolution + " &exit"; using (Process proc = new Process()) { proc.StartInfo.CreateNoWindow = true; proc.StartInfo.FileName = "cmd.exe"; proc.StartInfo.UseShellExecute = false; proc.StartInfo.RedirectStandardInput = true; proc.StartInfo.RedirectStandardOutput = true; proc.StartInfo.RedirectStandardError = true; proc.StartInfo.ErrorDialog = false; //proc.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; proc.Start(); proc.StandardInput.WriteLine(cmd); //proc.StandardInput.AutoFlush = true; //获取cmd窗口的输出信息 proc.StandardOutput.ReadToEnd(); proc.WaitForExit();//等待程序执行完退出进程 proc.Close(); } } #endregion
关于如何C#运行cmd,参考了园子里其他朋友的博客:http://www.cnblogs.com/babycool/p/3570648.html#undefined
以上是关于如何通过C#开发调用Skyline软件中提供的小工具的主要内容,如果未能解决你的问题,请参考以下文章