Net Core教程

C#?ArcGISEngine提取Modis数据的指定层数据

本文主要是介绍C#?ArcGISEngine提取Modis数据的指定层数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
/// <summary>
/// 提取Modis指定层数据
/// </summary>
/// <param name="ModisFilePath">输入的Modsi数据路径</param>
/// <param name="OutFilePath">提取后的输出路径</param>
public void DataGetTif_DayLST(string ModisFilePath, string OutFilePath)
{
    try
     {
       //加载Modis原始数据文件
       DirectoryInfo HdfDir = new DirectoryInfo(ModisFilePath);
       FileInfo[] HdfInfors = HdfDir.GetFiles("*.hdf");

      //定义gp
      ESRI.ArcGIS.Geoprocessor.Geoprocessor gp1 = new ESRI.ArcGIS.Geoprocessor.Geoprocessor();
      gp1.OverwriteOutput = true;

      //提取白天LST第0层数据
      foreach (var file in HdfInfors)
      {
           //提取后的文件名称
           string OutFileName = file.Name.Remove(file.Name.LastIndexOf("."));

           //提取后输出完整路径
            string OutFile = OutFilePath + "\\" + OutFileName + ".DayLST.tif";

          //执行提取
           ESRI.ArcGIS.DataManagementTools.ExtractSubDataset es = new ESRI.ArcGIS.DataManagementTools.ExtractSubDataset();
           es.in_raster = file.FullName;  //输入数据
           es.out_raster = OutFile;       //输出删格
           es.subdataset_index = 0;//这里的数字就是提取的哪一层
           gp1.Execute(es, null);  //执行操作
            
      }
   }
   catch(Exception ex)
   {
        LogHelper.LogError("Modis数据预处理,提取Modis数据异常", ex);
        thorw;
   }
 }

 

这篇关于C#?ArcGISEngine提取Modis数据的指定层数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!