到目前为止,我还没有参与过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"
感谢!!!
答案 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 !!!