
ArcGIS二次开发
文章平均质量分 67
ShirmyMao
这个作者很懒,什么都没留下…
展开
-
ArcEngine服务数据加载
arcengine 加载wmts、wms、wcs、MapServer、IameServer等服务方法原创 2022-04-19 17:11:12 · 765 阅读 · 0 评论 -
ArcEngine符号相关
1.图层符号设置1.1.通过图层属性面板设置符号1.2.设置自定义符号1.3.读取lyr图层文件设置符号1.4.读取style样式文件设置符号1.5.添加图层标注2.几何符号设置3.符号转图片进行预览原创 2022-04-19 16:47:13 · 986 阅读 · 0 评论 -
arcengine读取栅格闪退
arcengine读取栅格闪退csbs如果在进行argis二次开发的时候没有进行mapcontrol控件的初始化,往往会遇到莫名其妙的问题,比如读取栅格数据闪退,创建数据库失败,自定义坐标系或者未知坐标系的图层无法读取等,解决方案如下:cs在主程序初始化时加上如下代码:private void Initial(){ var win = new Window() { Content = new WindowsFormsHost() { Child = new AxMa原创 2021-11-08 16:25:55 · 1460 阅读 · 0 评论 -
ArcPy开发环境配置
ArcPy开发环境配置在线版本搭建1. 下载Pip文件2. 设置pip源为阿里云镜像3. 安装pip方法1:方法2(推荐):4. ArcPy开发环境搭建离线版本搭建第一步第二步第三步第四步在线版本搭建1. 下载Pip文件https://bootstrap.pypa.io/pip/2.7/get-pip.py打开后复制粘贴,保存为get-pip.py文件2. 设置pip源为阿里云镜像参考: https://blog.youkuaiyun.com/cityice/article/details/5388342原创 2021-08-24 16:23:25 · 3145 阅读 · 0 评论 -
Arcengine点,线,面,文本渲染
Arcengine点,线,面,文本渲染1.点2.线3.面(Polygon和Envelop)(1)pFillSymbol.Style = esriSimpleFillStyle.esriSFSSolid(2)pFillSymbol.Style = esriSimpleFillStyle.esriSFSNull(3)pFillSymbol.Style = esriSimpleFillStyle.esriSFSHollow(4)pFillSymbol.Style = esriSimpleFillStyle.esr原创 2021-08-20 10:40:44 · 1098 阅读 · 0 评论 -
Arcengine打印视图与布局视图原理解析
Arcengine打印视图与布局视图原理解析1.LayoutControl与MapControl视图同步1.1.视图同步处理1.2.原理1.3.打印视图缩放至某地图视图可视范围2.1.LayoutControl与MapControl视图同步1.1.视图同步处理/// <summary>/// 地图视图与数据视图同步/// </summary>/// <param name="mapcontrol"></param>/// <param na原创 2021-08-19 12:24:12 · 1539 阅读 · 0 评论 -
arcengine几何转换(线面互换,几何与geojson、wkt互换)
线与面的相互转换线转面面转线线转面/// <summary> /// 线转面 /// </summary> /// <param name="geo"></param> /// <returns></returns> public static IPolygon PolylineToPolygon(object geo) { ISegmentCollection polygons = new Pol原创 2021-06-30 15:52:51 · 1703 阅读 · 0 评论 -
ITopologicalOperator使用说明
ITopologicalOperator使用说明var operator=geometry as ITopologicalOperator官网帮助文档拓扑方法只能应用于高级几何图形。高级几何图形包括point, multipoint, polyline and polygon。要将此方法用于低级几何图形,如segments (Line, Circular Arc, Elliptic Arc, Bézier Curve), paths or rings,必须将它们包装到高级几何图形类型中。原创 2021-06-29 19:12:27 · 401 阅读 · 0 评论 -
Arcengine开发效率优化(不定时更新)
Arcengine开发效率优化建议1.修改要素效率对比方法1:IFeature赋值方法2 IRow赋值结论2.新增要素效率对比3.删除要素效率对比4.遍历要素效率对比5. 计算点到目标几何的最短距离是否在容差范围内5.1 esri方法5.2.数学方法结论1.修改要素效率对比需要对图层的某个字段统一赋值方法1:IFeature赋值var dataset = layer as IDataset;var workspaceEdit = dataset.Workspace as IWorkspaceEdi原创 2021-06-24 09:56:19 · 1265 阅读 · 0 评论 -
Arcengine 自定义工具鼠标样式设置
Arcengine 自定义工具鼠标样式设置1.系统自带样式2. 自定义鼠标样式温馨提示arcengine开发过程中,有时会需要自定义工具,尤其是在开发要素编辑模块的时候,那么如何修改鼠标样式呢?自定义工具需要继承 ESRI.ArcGIS.ADF.BaseClasses.BaseTool,刚开始以为直接设置public override int Cursor => 2;2对应esriControlsMousePointer里面的值,然而并没有生效,接着观察发现哪怕是ae自带的工具,cursor原创 2021-06-23 10:02:17 · 966 阅读 · 0 评论 -
arcengine 这个集合中找不到此项目
arcengine 这个集合中找不到此项目Feature.Shape 几何赋值报错Feature.Store报错近期在ArcEngine开发过程中碰到很多“这个集合中找不到此项目”的错误,每次引发的原因都不一样,解决方案也有所不同,特做以下整理,若之后遇到其它情况和解决方案,将会不定时更新Feature.Shape 几何赋值报错原因:可能是一个有z值一个没有z值引起的方法1:给几何对象设置z值public static IGeometryDef GetGeometryDef(IFeat原创 2021-06-07 11:42:21 · 3403 阅读 · 0 评论 -
ArcSde开启编辑报错解决方案
如何将arcgis server注册到数据库创建ArcSDE连接文件创建ArcSDE连接文件工具箱中选择数据管理(Data Managerment)原创 2021-06-01 16:17:41 · 863 阅读 · 0 评论 -
geometry没有Z值或者geometryZ值为空解决方案
近日碰到在执行feature.shape=geo的操作时会报geometry没有z值(the geometry has no z values)以及geometry的z值为空(the geometry has no null values)的错误,这通常是因为使用的数据源是用其它软件导出的,默认是有z值的,但是arcgis默认是没有z值的,以致产生了矛盾。然而网上找的许多解决方案并不完善,因此优化后解决方案如下:确保创建的字段是有z值的///获取参考几何信息 public static IGeomet原创 2021-05-13 22:59:10 · 3270 阅读 · 0 评论 -
bug及解决方案合集(不定时更新)
bug及解决方案合集1 .Net1.1 检索 COM 类工厂中 CLSID 为 {XXXX-XXXX-XXX-XXXXX-XXX} 的组件时失败,原因是出现以下错误:1.2 CS1752无法嵌入互操作类型"OPCServerClass"。请改用适用的接口2 ArcGIS2.1 Error: ArcGIS version not specified. You must first bind to an ArcGIS version prior to using any ArcGIS components2.2原创 2021-03-11 11:22:01 · 849 阅读 · 0 评论 -
AxMapControl,TOCControl,AxPageLayoutControl,鹰眼
地图控件AxMapControl本章将主要介绍AxMapControl控件的初始化、地图事件以及与内容列表控件AxTOCControl的绑定public AxMapControl MapControl { get; private set; }public AxTOCControl TocControl { get; private set; }private void AxMapControlPage_Loaded(object sender, RoutedEventArgs e){原创 2021-03-11 10:45:48 · 1168 阅读 · 0 评论 -
谷歌地图解析及ArcEngine加载谷歌地图方法
谷歌地图解析及ArcEngine加载谷歌地图方法前言1.简介2.获取切片地址3.经纬度与切片的相互转换4.缩放级别Z的计算4.1 比例尺比较法4.2 最大切片数量法5.结束语前言上一章介绍了ArcGIS加载天地图的方法。然后谷歌地图确是ArcGIS目前没有支持的,网上也有一些工具可以添加到ArcMap的toolbox中从而实现加载谷歌地图。那么在ArcEngine开发中,该如何实现谷歌地图的加载呢?具体代码下载,各位看官可戳这里接下来将从实现原理展开介绍1.简介谷歌地图采用的是web墨卡托投影,原创 2021-01-14 21:18:07 · 1584 阅读 · 0 评论 -
ArcEngine加载天地图以及低版本ArcGIS加载天地图方法
ArcEngine在线地图加载(谷歌地图和天地图)天地图谷歌地图天地图谷歌地图原创 2021-01-14 13:33:02 · 4065 阅读 · 6 评论 -
ArcEngine视图小工具
ArcEngine视图小工具1.工具栏常用工具2.数据相关工具3.几何相关工具4.后记1.工具栏常用工具以下将按照ArcGIS工具栏工具依次给出常用工具的调用方法/// <summary>/// 放大地图/// </summary>/// <param name="control"></param>public void ZoomIn(dynamic control){ ICommand pCommand = new Contr原创 2021-01-08 20:58:59 · 347 阅读 · 1 评论 -
ArcEngine无闪烁刷新及比例尺变化时的渲染优化
ArcGIS二次开发之无闪烁刷新public static void Refresh(AxMapControl mapControl,object data, IEnvelope env,esriViewDrawPhase type=esriViewDrawPhase.esriViewAll){ if (env == null) env = mapControl.ActiveView.Extent; if (data == null) mapControl原创 2021-01-06 22:26:01 · 943 阅读 · 0 评论 -
ArcEngine资源释放
ArcGIS二次开发之资源释放控件Dispose矢量数据资源完全释放Marshal释放com组件资源使用ComReleaser管理资源释放注意事项控件Disposearcgis使用的控件通常为非托管资源,即继承了IDisposable接口。非托管资源无法由GC垃圾回收线程进行管理,只能由程序员进行手动释放,即手动执行Dispose()操作。其实不仅仅是arcgis使用的控件,再wpf中调用winform控件都会面临这样的问题,如PictureBox控件,若不进行控件的dispose手动回收,容易造成内存原创 2020-12-27 22:57:40 · 1374 阅读 · 0 评论 -
ArcGIS二次开发之WPF中控件的使用
WPF中ArcGIS控件的使用WPF中插入ArcGIS控件Winform控件上嵌套使用WPF控件WPF中插入ArcGIS控件在WPF中引用ArcGIS的控件需要使用WindowsFromsHost,具体用法如下:添加引用:WindowsFormsIntegration和system.windows.formWpf.xaml中<WindowsFormsHost Grid.Column="0" x:Name="mapHost"></WindowsFormsHost>原创 2020-12-27 22:01:29 · 1083 阅读 · 0 评论 -
ArcEngine许可相关
授权1.组件初始化失败2.NO License3.通用许可证初始化方法1.组件初始化失败Error: ArcGIS version not specified. You must first bind to an ArcGIS version prior to using any ArcGIS components官方解决方案10.0版本开始需要执行Runtime绑定,即开发前确定具体的产品。执行该操作需引用ESRI.ArcGIS.Version,具体代码如下:ESRI.ArcGIS.Runt原创 2020-12-27 20:23:03 · 1702 阅读 · 0 评论 -
ArcGIS二次开发前言
ArcGIS二次开发前言前言环境常见bug解决方案前言自毕业成为GIS开发工程师已有一年多的时间,时间很短,短到不过人一生中工作时限的3.75%,时间很长,长到收藏夹已经从零攒到了一千四百多条记录,OneNote上也记录了几十万字笔记,与初离象牙塔的懵懂已不可同日而语。听着这一年似乎学了很多,但老实说,给知识做加法再容易不过,给知识做减法才是真正的挑战。为方便自己融会贯通,温故知新,特趁着年底总结自己梳理一遍自己的知识体系。知识体系中也可能有不完善之处,还望各位前辈多多指教。环境(1)Windows原创 2020-12-26 19:54:53 · 611 阅读 · 1 评论