Arcgisdesktop中Data Management Tool中有一个clip的功能,即可以实现根据矢量数据的范围对栅格数据的裁剪的功能,在这里它有一个可选项use input features for Clipping Geometry,即是否按照所输入shp数据的图形范围对栅格数据进行裁剪,根据其是否勾选,clip有两种实现方法,具体如下:
1,、勾选,即按照矢量数据的范围对栅格数据进行裁剪(裁剪后输出范围和输入的shp相同):
/// <summary>
/// 按shp范围裁剪Raster数据/// </summary>
/// <param name="inShp">输入shp数据</param>
/// <param name="inRaster">输入Raster数据</param>
private string ClipDem(string inShp, string inRaster)
{
try
{
//调用GP工具
Geoprocessor clipGeoprocessor = new Geoprocessor();
//这个工作空间大家电脑上都有,可以都写这个,不必更换路径(只要你装了arcgis)
clipGeoprocessor.OverwriteOutput = true;
string clipRasterName = "clipRaster.tif";
//路径+raster名称(newFolder是你想保存裁剪影像的路径)
string clipRaster = newFolder + "\\" + clipRasterName;