![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
arcengine开发
gis二次开发
再也不敢了
这个作者很懒,什么都没留下…
展开
-
ArcGIS开发Add-in属性赋值
arcengine通过add-in方式进行开发,对数据进行属性赋值原创 2023-12-08 10:04:33 · 517 阅读 · 0 评论 -
ArcGIS Engine 操作office时显示未在本地计算机上注册Microsoft.ACE.OLEDB.12.0解决方案
网上好多说安装AccessDataEngine.exe的,可是没说必须安装2007版本呀,安装不同版本的office软件,必须安装2007版本的AccessDataEngine.exe,不然还是会报错。资源下载在我的资源里面。原创 2020-12-04 11:04:07 · 150 阅读 · 0 评论 -
ArcGIS二次开发,arcengine将DataTable转为ITable
上篇文章讲到如何将ITable转换为DataTable,转换为DataTable主要是为了操作编辑.dbf里面的数据,当编辑完之后,若有必要,需要再将DataTable转换为ITable。这个过程比较繁琐,因为所有字段都需要手动添加,设置字段格式、名称、长度等,需要和源.dbf数据中的字段相同。具体代码如下: public ITable RNtoITable(DataTable pdt, IFeatureWorkspace pifw, string e) { I原创 2020-11-17 17:14:46 · 689 阅读 · 0 评论 -
ArcGIS二次开发,arcengine将ITable转换为DataTable
前面文章中讲到arcengine读取.dbf表,当对.dbf表进行编辑操作时,没办法直接对ITable类的.dbf表进行编辑,因此将ITable表先转换为datatable表。具体代码如下:将读取的.dbf表以参数形式传递到下面方法中, public DataTable ITabletoDataTable(ITable e) { DataTable dt = new DataTable(); //根据.dbf表的字段,对DataTab原创 2020-11-17 16:53:36 · 613 阅读 · 0 评论 -
arcmap导入shp数据到postgreSQL数据库错误的解决方案。
关于arcmap导入shp数据到postgreSQL中错误的问题,主要是建立的数据库有问题,建立数据库是使用范本template1。建立好数据库后(前提是已经安装完postgis),使用arcmap连接数据库,然后导入数据就OK了。...原创 2020-11-11 15:05:08 · 1399 阅读 · 0 评论 -
ArcEngine读取.dbf表(通过图层数据)
上一篇博客中介绍了通过存储路径打开.dbf表的方法,本篇博客主要介绍一下如何通过图层数据获取.dbf表。在处理数据过程中,可以将需要处理的数据放在同一文件夹下,因此本方法适用于读取和图层数据放在同一文件夹下的.dbf表数据。//a代表.dbf的名称 public ITable ReadLNTable(ILayer m, string a) { IDataLayer pidl = m as IDataLayer; IDatasetName p原创 2020-11-03 14:15:21 · 491 阅读 · 0 评论 -
ArcEngine读取.dbf表(通过路径)
ArcMap中可以直接将.dbf表加载当地图窗口,但是在ArcEngine构建的界面中,axMapControl中是加载不了.dbf表的,而且axTOCControl中也不显示.dbf表名,因此要读取.dbf表,要吗知道表的绝对路径,要嘛把.dbf表放在图层数据的文件夹下,通过读取图层数据的文件夹,进而获取.dbf表。下面介绍有明确的绝对路径的.dbf表的读取。 public ITable ReadLNTable( string e, string a) {原创 2020-11-03 14:09:55 · 538 阅读 · 0 评论 -
ArcEngine添加属性字段
在属性表操作过程中,最经常使用的功能就是添加字段,下面代码是往要素图层中添加名为"PathName",类型为text,长度是60的字段,if语句用来判断源属性表中是否已存在名为“PathName”的属性字段。 public void AddField(IFeatureLayer s) { IFeatureClass pfc = s.FeatureClass as IFeatureClass; IClass cls = pfc as IClas原创 2020-11-03 13:53:01 · 1384 阅读 · 0 评论 -
ArcEngine .dbf表之间连接Join
ArcEngine .dbf表之间连接Join上一个博客写了要素图层属性表与.dbf之间的连接Join,但是若想两个.dbf表之间连接,再用那种方法就不行了,因此这里调用GP工具实现.dbf表之间的连接Join。GP工具实在是强大,能解决你的问题,但是却不能让你知道到底如何实现的,连接之后打开.dbf表之后才发现,原来这种join就是根据连接字段,将外表的字段复写到基表上,这种Join是不能Remove的,而且这种Join效率不高,但是没办法,是让我不能实现像属性表之间的Join那样实现.dbf之间的连接原创 2020-10-28 20:44:46 · 372 阅读 · 0 评论 -
arcgis二次开发 arcengine属性表连接join
arcgis二次开发 arcengine属性表连接看了好多资源,现在总结一下我的属性链接功能实现。首先这种方法的基表必须是要素图层,.dbf表是不可能作为基表进行连接的(或许可以但我没实现),而外表可以是要素图层的属性表,同时也可以是.dbf表。方法中的字符串参数就是属性连接时的挂接字段。首先要进行属性挂接,必须能够访问进行属性挂接的成员,IDisplayRelationshipClass接口提供了这种功能,而这个成员就是我们进行属性挂接的要素图层IDisplayRelationshipClass p原创 2020-10-27 15:59:55 · 1736 阅读 · 0 评论 -
ArcEngine打开MXD文件
ArcEngine打开MXD文件using System.Windows.Forms;using ESRI.ArcGIS.Controls;using ESRI.ArcGIS.Carto; public void JoinSHP(AxMapControl e, AxTOCControl a) { OpenFileDialog op = new OpenFileDialog(); op.Filter = "ArcMap文档(原创 2020-10-27 09:49:22 · 1209 阅读 · 0 评论 -
保存当前地图为MXD文件
保存当前地图为MXD文件 //当前地图存为MXD public void StoreSHP(AxMapControl e, AxTOCControl a) { SaveFileDialog sfd = new SaveFileDialog(); sfd.Filter = "ArcMap文档(*.mxd)|*.mxd"; sfd.Title = "保存文档"; sfd.Rest原创 2020-10-27 09:42:17 · 336 阅读 · 0 评论 -
ArcEngine属性字段计算器(使用GP工具将属性中一个字段c的值赋给另一个字段b)
ArcEngine属性字段计算器(使用GP工具将属性中一个字段c的值赋给另一个字段b)using ESRI.ArcGIS.Geoprocessor;using ESRI.ArcGIS.DataManagementTools;using ESRI.ArcGIS.Geodatabase; public void SetValue(IFeatureClass a, string b, string c) { Geoprocessor gp = new Geopro原创 2020-10-27 09:34:07 · 1260 阅读 · 2 评论 -
ArcEngine打开、保存图层编辑
ArcEngine打开、保存图层编辑在添加字段时,先打开图层编辑,添加之后再保存编辑using ESRI.ArcGIS.Geodatabase;using ESRI.ArcGIS.Controls; public void OpenEditor(IFeatureLayer s, AxMapControl a) { private IEngineEditor pEngineEditor = new EngineEditorClass();原创 2020-10-27 09:22:01 · 555 阅读 · 0 评论