用(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

相关文章

C#借助Spire.XLS for .NET实现在Excel中添加文档属性

《C#借助Spire.XLSfor.NET实现在Excel中添加文档属性》在日常的数据处理和项目管理中,Excel文档扮演着举足轻重的角色,本文将深入探讨如何在C#中借助强大的第三方库Spire.... 目录为什么需要程序化添加Excel文档属性使用Spire.XLS for .NET库实现文档属性管理Sp

idea设置快捷键风格方式

《idea设置快捷键风格方式》在IntelliJIDEA中设置快捷键风格,打开IDEA,进入设置页面,选择Keymap,从Keymaps下拉列表中选择或复制想要的快捷键风格,点击Apply和OK即可使... 目录idea设www.chinasem.cn置快捷键风格按照以下步骤进行总结idea设置快捷键pyth

MySQL中between and的基本用法、范围查询示例详解

《MySQL中betweenand的基本用法、范围查询示例详解》BETWEENAND操作符在MySQL中用于选择在两个值之间的数据,包括边界值,它支持数值和日期类型,示例展示了如何使用BETWEEN... 目录一、between and语法二、使用示例2.1、betwphpeen and数值查询2.2、be

MyBatis配置文件中最常用的设置

《MyBatis配置文件中最常用的设置》文章主要介绍了MyBatis配置的优化方法,包括引用外部的properties配置文件、配置外置以实现环境解耦、配置文件中最常用的6个核心设置以及三种常用的Ma... 目录MyBATis配置优化mybatis的配置中引用外部的propertis配置文件⚠️ 注意事项X

C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解

《C++,C#,Rust,Go,Java,Python,JavaScript的性能对比全面讲解》:本文主要介绍C++,C#,Rust,Go,Java,Python,JavaScript性能对比全面... 目录编程语言性能对比、核心优势与最佳使用场景性能对比表格C++C#RustGoJavapythonjav

C# 预处理指令(# 指令)的具体使用

《C#预处理指令(#指令)的具体使用》本文主要介绍了C#预处理指令(#指令)的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录1、预处理指令的本质2、条件编译指令2.1 #define 和 #undef2.2 #if, #el

C#实现将Excel工作表拆分为多个窗格

《C#实现将Excel工作表拆分为多个窗格》在日常工作中,我们经常需要处理包含大量数据的Excel文件,本文将深入探讨如何在C#中利用强大的Spire.XLSfor.NET自动化实现Excel工作表的... 目录为什么需要拆分 Excel 窗格借助 Spire.XLS for .NET 实现冻结窗格(Fro

C# Semaphore与SemaphoreSlim区别小结

《C#Semaphore与SemaphoreSlim区别小结》本文主要介绍了C#Semaphore与SemaphoreSlim区别小结,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的... 目录一、核心区别概览二、详细对比说明1.跨进程支持2.异步支持(关键区别!)3.性能差异4.API 差

C# List.Sort四种重载总结

《C#List.Sort四种重载总结》本文详细分析了C#中List.Sort()方法的四种重载形式及其实现原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友... 目录1. Sort方法的四种重载2. 具体使用- List.Sort();- IComparable

C#中Trace.Assert的使用小结

《C#中Trace.Assert的使用小结》Trace.Assert是.NET中的运行时断言检查工具,用于验证代码中的关键条件,下面就来详细的介绍一下Trace.Assert的使用,具有一定的参考价值... 目录1、 什么是 Trace.Assert?1.1 最简单的比喻1.2 基本语法2、⚡ 工作原理3