手上有一张测绘的高程点的矢量图,需要做一个简单的高程插值算法,在鼠标移动是根据其周边的点的高程计算出当前的高程值,
不想做的太复杂,基本思路是按一定的半径搜索高程点,根据每一个高程点的距离远近进行加权平均,计算出高程值,
精确一点,就是使用反距离权重插值法,距离越远的高程点,影响度越低,如下图:
在ArcEngine中实现,以鼠标点为中心搜索 指定半径的图元,使用如下方法:
/// <summary> /// 搜寻高程点 /// </summary> /// <param name="elevationLayer">高程图层</param> /// <param name="currentPosition">当前鼠标位置</param> /// <param name="searchRadius">搜寻半径</param> /// <returns></returns> private IFeatureCache SearchPoint(ILayer elevationLayer, IPoint currentPosition, int searchRadius) { IFeatureLayer ftrLyr = elevationLayer as IFeatureLayer; IFeatureCache m_featureCache = new ESRI.ArcGIS.Carto.FeatureCacheClass(); m_featureCache.Initialize(currentPosition, searchRadius); m_featureCache.AddFeatures(ftrLyr.FeatureClass); return m_featureCache; }
然后遍历图元,使用IFeature的get_value方法获取图元的高程值字段内容,按算法计算一下,就出来了,凑合可以用了,至少比直接平均要来的好一点,使用的搜索半径默认为90M,这个是参考了国际DEM的精度,以及地图高程点的疏密程度来设置的,可根据具体情况设置。
参考资料:《地理信息系统算法基础》科学出版社 2006 p166
您还没有登录,请您登录后再发表评论
利用arcengine用 反距离权重法 根据raster生成等值线源码
利用C#中winForm窗体编写的可以实现克里金插值、IDW插值,样条函数差值,自然函数插值等插值方法,代码亲测可用。
ArcEngine实现IDW插值,修改地图路径即可使用。
AE开发:实现将地图导入,并且点击鼠标即可测量地图上两点距离,适合AE初学者使用
,ArcEngine椭球面积计算代码,基于ArcGIS写的多边形椭球面积计算
韩鹏的ARCENGINE 源韩鹏的ARCENGINE 源代码韩鹏的ARCENGINE 源代码代码
使用vs软件实现ArcEngine的二次开发,具体包括地图的放大缩小、平移、全局视图,地图渲染与符号化,克里金插值、样条函数插值和反距离权重插值
arcengine Excel shp IDW插值
ArcEngine+C#实现ArcGIS的Swipe卷帘功能
ArcEngine10官方开发手册,中文版,快速了解AE产品体系,快速开发入门。
ArcEngine二次开发代码,调试可运行,可实现属性查询、空间查询和统计功能!供初学者练习使用.........
2. 用ArcEngine的工具条添加图层要素 2 3. ArcEngine中对Feature的编辑 5 4. Feature的概念 6 5. 如何实现经度纬度到平面坐标的相互转换?(转载) 7 6. ArcEngine 最短路径分析(源码) 9 7. ArcEngine中使用上下...
ArcEngine开发,用线裁切面,能实现对多边形的批量裁切
ArcEngine注记处理专题 http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=122097&extra=page=4
ArcEngine栅格数据渲染,包括RGB渲染、分类色带渲染、唯一值渲染、拉伸渲染等。
ArcGIS+ArcEngine 10.2 百度云下载地址 内容包括3个文件: ArcGIS_Desktop_102_134924.iso、ArcGIS10.2破解文件.rar和ArcGIS Engine10.2_20130816.iso。 ArcGIS10.2破解方法不同于10.1(不用单独下载License Manager...
C# + ArcEngine实现的属性表读取、排序等操作。
VS2019使用arcengine10.2只需双击就可以
arcengine 9.3的破解 arcengine 9.3的破解 arcengine 9.3的破解
主要描述了ArcEngine二次开发方面的内容,比较适合初学者!
相关推荐
利用arcengine用 反距离权重法 根据raster生成等值线源码
利用C#中winForm窗体编写的可以实现克里金插值、IDW插值,样条函数差值,自然函数插值等插值方法,代码亲测可用。
ArcEngine实现IDW插值,修改地图路径即可使用。
AE开发:实现将地图导入,并且点击鼠标即可测量地图上两点距离,适合AE初学者使用
,ArcEngine椭球面积计算代码,基于ArcGIS写的多边形椭球面积计算
韩鹏的ARCENGINE 源韩鹏的ARCENGINE 源代码韩鹏的ARCENGINE 源代码代码
使用vs软件实现ArcEngine的二次开发,具体包括地图的放大缩小、平移、全局视图,地图渲染与符号化,克里金插值、样条函数插值和反距离权重插值
arcengine Excel shp IDW插值
ArcEngine+C#实现ArcGIS的Swipe卷帘功能
ArcEngine10官方开发手册,中文版,快速了解AE产品体系,快速开发入门。
ArcEngine二次开发代码,调试可运行,可实现属性查询、空间查询和统计功能!供初学者练习使用.........
2. 用ArcEngine的工具条添加图层要素 2 3. ArcEngine中对Feature的编辑 5 4. Feature的概念 6 5. 如何实现经度纬度到平面坐标的相互转换?(转载) 7 6. ArcEngine 最短路径分析(源码) 9 7. ArcEngine中使用上下...
ArcEngine开发,用线裁切面,能实现对多边形的批量裁切
ArcEngine注记处理专题 http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=122097&extra=page=4
ArcEngine栅格数据渲染,包括RGB渲染、分类色带渲染、唯一值渲染、拉伸渲染等。
ArcGIS+ArcEngine 10.2 百度云下载地址 内容包括3个文件: ArcGIS_Desktop_102_134924.iso、ArcGIS10.2破解文件.rar和ArcGIS Engine10.2_20130816.iso。 ArcGIS10.2破解方法不同于10.1(不用单独下载License Manager...
C# + ArcEngine实现的属性表读取、排序等操作。
VS2019使用arcengine10.2只需双击就可以
arcengine 9.3的破解 arcengine 9.3的破解 arcengine 9.3的破解
主要描述了ArcEngine二次开发方面的内容,比较适合初学者!