用(AE+C#)和ArcGIS中设置IDW插值后的栅格的空间范围

2023-12-15 10:48

本文主要是介绍用(AE+C#)和ArcGIS中设置IDW插值后的栅格的空间范围,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在AE中我想用IRasterAnalysisEnvironment接口的SetExtent方法来设置范围,虽然没报错,但是还是原先的样子。

private void toolStripMenuItem9_Click(object sender, EventArgs e){IInterpolationOp pInterpolationOp;pInterpolationOp = new RasterInterpolationOpClass();IFeatureClass pFeatureClass;//进行插值的图层pFeatureClass = pTocFeatureLayer.FeatureClass;//根据范围矢量图层的名称获取其序号ind = OperateMap.GetLayerIndexByName(mainMapControl, "乡镇复制_pro");IFeatureLayer featureLayer = this.mainMapControl.Map.get_Layer(ind) as IFeatureLayer;//点图层在axMapControl控件的第一个,索引为0//设置搜索半径,本例为12IRasterRadius pRadius;pRadius = new RasterRadiusClass();object maxDistance = Type.Missing;pRadius.SetVariable(12, ref maxDistance);//设置进行插值的属性字段IFeatureClassDescriptor pFCDescriptor;pFCDescriptor = new FeatureClassDescriptorClass();string FieldName = " ";//注意,引号内为Idw插值中的Z值,即属性表中要进行对其进行插值的字段名pFCDescriptor.Create(pFeatureClass, null, FieldName);//设置输出像元大小 IRasterAnalysisEnvironment pEnv;pEnv = new RasterAnalysis();object dCellSize = 144.337439931631;//设置像元值(参考ARCMAP)pEnv = pInterpolationOp as IRasterAnalysisEnvironment;pEnv.SetCellSize(esriRasterEnvSettingEnum.esriRasterEnvValue, ref dCellSize);object objectbarrier = Type.Missing;//设置空间处理范围object extent;IGeoDataset geo = featureLayer.FeatureClass as IGeoDataset;//featureLayer为“乡镇复制”extent = geo.Extent;pEnv.SetExtent(esriRasterEnvSettingEnum.esriRasterEnvValue, ref extent, ref maxDistance);//执行IDW,并输出栅格IGeoDataset rasDataset;rasDataset = pInterpolationOp.IDW((IGeoDataset)pFCDescriptor, 2, pRadius, ref objectbarrier);IRaster pOutRaster;pOutRaster = rasDataset as IRaster;pOutRasLayer = new RasterLayerClass();pOutRasLayer.CreateFromRaster(pOutRaster);this.mainMapControl.AddLayer(pOutRasLayer, 0);// 输出结果至axMapControl1,并放置在第一层mainMapControl.ActiveView.Refresh();//刷新视图}

在ArcGIS中,修改空间范围的两个方法:
(1)修改图层的数据框属性
在这里插入图片描述点击右下角的环境——处理范围——选择“与 某矢量图层 相同"
在这里插入图片描述点击确定即可。

(2)在插值时的界面上设置环境中的处理范围。
右击 内容列表中的 最上面的图层——选择属性
在这里插入图片描述

在这里插入图片描述范围设置为自动——裁剪选项中选择“裁剪至形状"——点击”指定形状“
在这里插入图片描述选择“要素的轮廓"——选择范围矢量图层

这篇关于用(AE+C#)和ArcGIS中设置IDW插值后的栅格的空间范围的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/496173

相关文章

Ubuntu如何分配​​未使用的空间

《Ubuntu如何分配​​未使用的空间》Ubuntu磁盘空间不足,实际未分配空间8.2G因LVM卷组名称格式差异(双破折号误写)导致无法扩展,确认正确卷组名后,使用lvextend和resize2fs... 目录1:原因2:操作3:报错5:解决问题:确认卷组名称​6:再次操作7:验证扩展是否成功8:问题已解

C#读写文本文件的多种方式详解

《C#读写文本文件的多种方式详解》这篇文章主要为大家详细介绍了C#中各种常用的文件读写方式,包括文本文件,二进制文件、CSV文件、JSON文件等,有需要的小伙伴可以参考一下... 目录一、文本文件读写1. 使用 File 类的静态方法2. 使用 StreamReader 和 StreamWriter二、二进

C#中Guid类使用小结

《C#中Guid类使用小结》本文主要介绍了C#中Guid类用于生成和操作128位的唯一标识符,用于数据库主键及分布式系统,支持通过NewGuid、Parse等方法生成,感兴趣的可以了解一下... 目录前言一、什么是 Guid二、生成 Guid1. 使用 Guid.NewGuid() 方法2. 从字符串创建

linux hostname设置全过程

《linuxhostname设置全过程》:本文主要介绍linuxhostname设置全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录查询hostname设置步骤其它相关点hostid/etc/hostsEDChina编程A工具license破解注意事项总结以RHE

Mysql实现范围分区表(新增、删除、重组、查看)

《Mysql实现范围分区表(新增、删除、重组、查看)》MySQL分区表的四种类型(范围、哈希、列表、键值),主要介绍了范围分区的创建、查询、添加、删除及重组织操作,具有一定的参考价值,感兴趣的可以了解... 目录一、mysql分区表分类二、范围分区(Range Partitioning1、新建分区表:2、分

Python设置Cookie永不超时的详细指南

《Python设置Cookie永不超时的详细指南》Cookie是一种存储在用户浏览器中的小型数据片段,用于记录用户的登录状态、偏好设置等信息,下面小编就来和大家详细讲讲Python如何设置Cookie... 目录一、Cookie的作用与重要性二、Cookie过期的原因三、实现Cookie永不超时的方法(一)

C# 比较两个list 之间元素差异的常用方法

《C#比较两个list之间元素差异的常用方法》:本文主要介绍C#比较两个list之间元素差异,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1. 使用Except方法2. 使用Except的逆操作3. 使用LINQ的Join,GroupJoin

MySQL之InnoDB存储页的独立表空间解读

《MySQL之InnoDB存储页的独立表空间解读》:本文主要介绍MySQL之InnoDB存储页的独立表空间,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1、背景2、独立表空间【1】表空间大小【2】区【3】组【4】段【5】区的类型【6】XDES Entry区结构【

Qt 设置软件版本信息的实现

《Qt设置软件版本信息的实现》本文介绍了Qt项目中设置版本信息的三种常用方法,包括.pro文件和version.rc配置、CMakeLists.txt与version.h.in结合,具有一定的参考... 目录在运行程序期间设置版本信息可以参考VS在 QT 中设置软件版本信息的几种方法方法一:通过 .pro

CSS实现元素撑满剩余空间的五种方法

《CSS实现元素撑满剩余空间的五种方法》在日常开发中,我们经常需要让某个元素占据容器的剩余空间,本文将介绍5种不同的方法来实现这个需求,并分析各种方法的优缺点,感兴趣的朋友一起看看吧... css实现元素撑满剩余空间的5种方法 在日常开发中,我们经常需要让某个元素占据容器的剩余空间。这是一个常见的布局需求