Answers:
如果您有Spatial Analyst,则可以:
另一个解决方案:
如果您拥有3D Analyst许可证,则可以使用3D Analyst>转换>来自栅格下的Raster Domain工具(但是它不具有平滑功能)
您可以使用3D Analyst中的“栅格域”工具来创建与栅格数据具有相同范围的多边形
简单地数字化呢?单击-单击-单击-单击完成。
我使用了这个简单的python脚本,它使用文件夹中存在的所有栅格的范围创建了一个面要素类。要使用它,可以在ArcToolbox中创建一个工具,也可以简单地更改InFolder和Dest(目标)变量。
import arcpy,os
InFolder = arcpy.GetParameterAsText(0)
Dest=arcpy.GetParameterAsText(1)
arcpy.env.workspace=InFolder
#The raster datasets in the input workspace
in_raster_datasets = arcpy.ListRasters()
arcpy.CreateFeatureclass_management(os.path.dirname(Dest),
os.path.basename(Dest),
"POLYGON")
arcpy.AddField_management(Dest,"RasterName", "String","","",250)
arcpy.AddField_management(Dest,"RasterPath", "String","","",250)
cursor = arcpy.InsertCursor(Dest)
point = arcpy.Point()
array = arcpy.Array()
corners = ["lowerLeft", "lowerRight", "upperRight", "upperLeft"]
for Ras in in_raster_datasets:
feat = cursor.newRow()
r = arcpy.Raster(Ras)
for corner in corners:
point.X = getattr(r.extent, "%s" % corner).X
point.Y = getattr(r.extent, "%s" % corner).Y
array.add(point)
array.add(array.getObject(0))
polygon = arcpy.Polygon(array)
feat.shape = polygon
feat.setValue("RasterName", Ras)
feat.setValue("RasterPath", InFolder + "\\" + Ras)
cursor.insertRow(feat)
array.removeAll()
del feat
del cursor
另外,一种简单的方法是使用“重新分类”工具,您应在此单击“分类”按钮,并将类数更改为1。单击“确定”。现在,可以使用栅格到多边形转换工具轻松地转换输出栅格。;)
我认为将栅格重新分类并将其转换为多边形可能会非常耗时。我认为最简单的方法是:
如果您有很多栅格,则应使用Python进行此操作,并且可以在几秒钟内创建数百个足迹。
使用转换工具工具箱中的“栅格转多边形”工具。确保取消选中“简化多边形”框。这将完全创建您想要的。
如果要获取DEM栅格的轮廓,则需要执行以下操作
如果您有Spatial Analyst和3d Analyst,则可以: