各位大侠好,我有5个气象站10年的逐日资料,想通过IDW插值成栅格数据,为了实现批处理,我想通过ARCGIS VBA实现IDW插值,由于以前从未接触过VBA,希望大家帮忙。
在arcgis desktop help 中我搜索IDW找到了以下代码
ArcObjects example
' Create the RasterInterpolationOp object
Dim pInterpolationOp As IInterpolationOp
Set pInterpolationOp = New RasterInterpolationOp
' Create the input point object
Dim pInputDataset As IGeoDataset
' Calls function to open the point dataset from disk
Set pInputDataset = OpenFeatureDataset("D:\SpatialData", "inputpoints")
' Define the search radius
Dim pRadius As IRasterRadius
Set pRadius = New RasterRadius
pRadius.SetVariable 12
' Create the output dataset object
Dim pOutputDataset As IGeoDataset
' Calls the method
Set pOutputDataset = pInterpolationOp.IDW(pInputDataset, 3, pRadius
请问这个代码怎么在VBA中实现,因为我是0基础,希望能介绍得详细一点,谢谢了
谢谢 liaoqi1225的回答,不过我想实现的是批处理,这个多数据全用arctoolbox的话肯定不行
ARCGIS VBA如何实现IDW插值
答案:2 悬赏:60 手机版
解决时间 2021-02-18 08:29
- 提问者网友:浩歌待明月
- 2021-02-17 17:02
最佳答案
- 五星知识达人网友:山君与见山
- 2021-02-17 18:26
Arcmap中,Tools-macros- Visual Basic Edit.
也可直接用ArcGIS提供的空间分析模块来做.
IDW在ArcGIS里具体实现过程:
1)单击Spatial Analyst 下拉箭头,单击Interpolate to Raster,在一级菜单中单击Inverse Distance Weighted命令,打开IDW对话框。
2)单击Input points下拉箭头,选择参加内插计算的点数据集。
3)单击Z value field下拉箭头, 选择参加内插计算的字段名称。
4)在Power文本框中输入的IDW幂值。
5)单击Search radius type下拉箭头,选择搜索半径类型。
6)用Use barriers polylines选择河流、湖泊、水库等中断线文件,限制插值计算。
7)用Output cell size控制输出结果的栅格大小。
8)用Output raster文本框输入结果文件名称。
也可直接用ArcGIS提供的空间分析模块来做.
IDW在ArcGIS里具体实现过程:
1)单击Spatial Analyst 下拉箭头,单击Interpolate to Raster,在一级菜单中单击Inverse Distance Weighted命令,打开IDW对话框。
2)单击Input points下拉箭头,选择参加内插计算的点数据集。
3)单击Z value field下拉箭头, 选择参加内插计算的字段名称。
4)在Power文本框中输入的IDW幂值。
5)单击Search radius type下拉箭头,选择搜索半径类型。
6)用Use barriers polylines选择河流、湖泊、水库等中断线文件,限制插值计算。
7)用Output cell size控制输出结果的栅格大小。
8)用Output raster文本框输入结果文件名称。
全部回答
- 1楼网友:鱼芗
- 2021-02-17 19:25
任务占坑
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯