CAL中的GDAL变形#

时间:2014-11-25 16:33:58

标签: c# gdal epsg

到目前为止,我还没有参与过GDAL图书馆。如果这个问题没有任何意义,请原谅。

我正在尝试从EPSG实现图像变形:32611到EPSG:3857。我能够使用命令行使用以下命令成功变形。我想在我的C#项目中实现相同的命令集。我不知道从哪里开始。我找不到任何适用于C#的GDAL包装器库。任何有关这方面的帮助将不胜感激。

这些是我在命令行中运行的命令。 Raw.png是源图像。

gdal_translate -of Gtiff -co "tfw=yes" -a_ullr 273996.1204 5070668.029 274682.6204 5069981.529 -a_srs "EPSG:3857"  "C:/Temp/Raw.png" "C:/Temp/GEOTIFF.gtiff"

gdalwarp -s_srs EPSG:32611 -t_srs EPSG:3857 "C:/Temp/GEOTIFF.gtiff" "C:/Temp/WarpedGTIFF.tiff"

gdal_translate -of PNG "C:/Temp/WarpedGTIFF.tiff" "C:/Temp/WarpedPNG.png"

感谢!!!

1 个答案:

答案 0 :(得分:0)

以下代码是修复!!

 System.Diagnostics.Process process = new System.Diagnostics.Process();
 System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
 startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
 startInfo.FileName = "cmd.exe";
 startInfo.Arguments = "gdal_translate -of Gtiff -co "tfw=yes" -a_ullr 273996.1204 5070668.029 274682.6204 5069981.529 -a_srs "EPSG:3857"  "C:/Temp/Raw.png" "C:/Temp/GEOTIFF.gtiff"";
 process.StartInfo = startInfo;
 process.Start();

 process.WaitForExit();
 startInfo.Arguments = "gdalwarp -s_srs EPSG:32611 -t_srs EPSG:3857 "C:/Temp/GEOTIFF.gtiff" "C:/Temp/WarpedGTIFF.tiff"";
 process.StartInfo = startInfo;
 process.Start();

 process.WaitForExit();
 startInfo.Arguments = "gdal_translate -of PNG "C:/Temp/WarpedGTIFF.tiff" "C:/Temp/WarpedPNG.png"";
 process.StartInfo = startInfo;
 process.Start();

感谢DJ KRAZE !!!