ArcGISEngine
文章平均质量分 67
jojojojo2002
这个作者很懒,什么都没留下…
展开
-
FeatureClass 与DataSet的区别,与Layer的关系
ArcCatalog里建个DataSet和FeatureClass 就知道关系了 FeatureClass 可以看做是一张表,有相同空间参考的FeatureClass 放在一个DataSet里,特别是做拓扑分析和几何网络。layer只是对库里的featureclass的引用,在ArcMap里运用下join功能,再看库里的数据,就会比较清晰了 layer 是显示时候的对象 储存了转载 2011-11-15 13:38:47 · 3084 阅读 · 0 评论 -
ArcGIS Desktop Add-in插件开发系列一
Add-in的概念ArcGIS的10引入了几个新的和创新的功能,使您更容易定制和扩展ArcGIS桌面应用,包括新的桌面插件模型。Add-in可以理解为可以包含多种UI和非UI对象的插件包概念。其中支持的对象类型包括(主要分两大类):第一大类:交互类按钮和工具:按钮和工具是简单的控制,可以出现在工具栏按钮或在个案上的菜单。 组合框:一个组合框提供了一个项目的下拉列表,可以选择转载 2012-02-05 11:06:38 · 6121 阅读 · 3 评论 -
ArcGIS Desktop Add-in插件开发系列三
由于目前很多基础在线底图都是切片形式的缓存地图服务,每当我们在ArcMap中使用时,往往会发觉缺少了类似ArcGIS FlexViewer或谷歌地图的比例尺级别缩放滑块,虽然ArcMap支持对这类地图图层进行重采样处理,做到无级别缩放,但这种体验和我们在网页上的访问操作很不一致,客户往往需要点击Zoom to Nearest Cache Resoulution按钮来调整比例尺。为了给客户提供一致的转载 2012-02-05 11:08:05 · 4985 阅读 · 1 评论 -
桌面定制开发COM方式到Add-In方式的迁移
http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=105152 com方式定制 http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=105114 add-in方式前面个两篇帖子分别对桌面定制开发的COM方式和Add-In方式做了介绍,也通过两个相同的功转载 2012-02-05 15:42:00 · 2132 阅读 · 1 评论 -
ArcGIS Desktop Add-in插件开发系列四
高级话题延迟加载包含Add-in的程序集默认是在点击菜单或工具栏上的某一项目(例如按钮、命令)才正式加载到应用程序中的,这样做的好处就是节约了应用程序所使用的内存空间。如果要控制对象是否可以被点击,则需要在按钮或命令对象的OnUpdate事件里设置其Enable属性,并在对应的esriaddinx文件里对应的XML节添加onDemand属性,并设置为false,这样Add-in就能在应用程转载 2012-02-05 11:09:09 · 5497 阅读 · 1 评论 -
ArcSDE数据被锁定后的解锁方法
ArcSDE数据被锁定后的解锁方法在sde数据被锁定的情况下,编辑、创建featureclass或者注册版本的时候会报告:Lock request conflicts with an established lock。多半情况下关闭数据库连接可以解决这个问题,但有时候问题依然存在。ArcSDE数据被锁定后的解锁方法在sde数据被锁定的情况下,编辑、创建featureclas转载 2012-02-13 10:16:09 · 5724 阅读 · 1 评论 -
ArcObjects:添加图例代码
Private Sub showLegend() If Not pGroupElement Is Nothing Then pGroupElement.ClearElements() End If Dim graphicsContainer As IGraphicsContainer graphics转载 2012-02-15 14:58:03 · 1318 阅读 · 0 评论 -
ArcGIS Runtime支持的GP工具列表
ArcGIS Runtime支持的GP工具列表目录(?)[-]Standard版本Standard 空间分析扩展Standard 3D分析扩展Standard 网络分析扩展 目前ArcGIS Runtime有两个版本 Basic版本和Standard版本,而Basic版本不支持Geoprocessing(这里指的是本地的Geoprocessing),对于Ge转载 2012-12-24 11:08:13 · 1594 阅读 · 0 评论 -
编辑时snapping的添加
注意需要在编辑模式下进行snapping的添加(也即先需要使用IEngineEditor进入编辑状态): IMapControl3 mMap = (IMapControl3)((IToolbarControl)toolHook).Buddy; IEngineEditor m_engineEditor = new EngineEditorClass();转载 2013-02-19 11:20:30 · 906 阅读 · 0 评论 -
利用ArcGIS Engine、VS .NET和Windows控件开发GIS应用
利用ArcGIS Engine、VS .NET和Windows控件开发GIS应用Dixon整理此过程说明适合那些使用.NET建立和部署应用的开发者,它描述了使用ArcGIS控件建立和部署应用的方法和步骤。你可以在下面的目录下找到相应的样例程序:安装目录>/DeveloperKit/Samples/Developer_Guide_Scenarios/ ArcGIS_E转载 2013-04-22 10:14:37 · 1749 阅读 · 1 评论 -
由图层判断数据源类型
通过IWorkspaceName接口的WorkspaceFactoryProgID属性来判断IFeatureClass pFC = pFeatureLyr.FeatureClass;IDataset dataset = pFC as IDataset;IWorkspaceName ws = ((IDatasetName)(dataset.FullName)).WorkspaceNa转载 2013-06-26 09:26:48 · 1061 阅读 · 0 评论 -
ArcGIS Engine栅格数据使用总结
ArcGIS Engine栅格数据使用总结本条目发布于 2013 年 4 月 23 日。属于 3S业界、ArcGIS 分类。作者是 admin。简介:ArcGIS Engine栅格数据使用总结,一个栅格数据集由一个或者多个波段(RasterBand)的数据组成,一个波段就是一个数据矩阵。对于格网数据(DEM数据)和单波段的影像数据,表现为仅仅只有一个波段数据的栅格数据集转载 2013-08-20 11:42:49 · 1212 阅读 · 0 评论 -
ArcGIS Engine 捕捉
ArcGIS Engine 捕捉(转)本条目发布于 2013 年 4 月 10 日。属于 ArcGIS 分类。作者是 C/S开发。 http://bbs.esrichina-bj.cn/ESRI/viewthread.php?tid=33099&extra=page%3D5%26amp%3Bfilter%3Dtype%26amp%3Btypeid%3转载 2013-08-20 11:55:41 · 2507 阅读 · 0 评论 -
C#实现CAD数据转shape或mdb
C#实现CAD数据转shape或mdb 本文所指的CAD数据为不带空间参考和扩展数据的数据。如果CAD带了空间参考或是扩展属性数据的话,就要采用图形和属性分离的方法转CAD数据,即图形转完后需要挂接属性数据库。这里就不详细说明了. ArcGIS和CAD对空间数据的归纳有所不同,在AutoCad中,点线面可以在同一个图层中,但是在ArcGIS中,点线面被严格的区分为了转载 2013-09-27 16:53:29 · 3610 阅读 · 3 评论 -
ArcEngine下投影坐标和经纬度坐标的相互转换
ArcEngine下投影坐标和经纬度坐标的相互转换投影转经纬度private IPoint PRJtoGCS( double x, double y){ IPoint pPoint = new PointClass(); pPoint.PutCoords(x, y); ISpatialReferenceFactory pSRF = new转载 2015-04-02 17:05:17 · 3658 阅读 · 1 评论 -
arcGIS编辑报错:无法创建日志文件系统表。用户可能缺少创建表的权限或资源
最近发现的一个问题,在编辑大量数据的时候,arcGIS报错:无法创建日志文件系统表。用户可能缺少创建表的权限或资源 [Unable to create logfile system tables. User perhaps lacks permissions or resources to create tables] [SDE.GX_PS_PS_POINT][STATE_ID = 36]原创 2015-04-03 16:26:23 · 3478 阅读 · 0 评论 -
ArcGIS Desktop Add-in插件开发系列二
Add-in的开发流程使用VisualStudio的新建工程向导,选择ESRI提供的ArcGIS Add-in模板,这些Add-in模板针对ArcGIS Desktop所包含的每一个应用程序。选择完模板后,系统就会要求我们立即选择第一个添加到Add-in里的对象类型。之后,如果我们有需要往Add-in里添加更多其它的对象类型的话,可以通过添加新项目向导来创建新对象。Add-in的工转载 2012-02-05 11:07:17 · 11160 阅读 · 3 评论 -
悲催的ArcGIS10新的编辑几何属性用法
// arcgis10新特性,不支持原有几何属性中修改内容,需要副本或者新实例中实现 [2012.1.10 JOJO]把原来直接读取的shape变成副本//IGeometry pGeo = m_pCurFeature.Shape;IGeometry pGeo = m_pCurFeature.ShapeCopy;否则在重新赋值新的属性时,会报错原创 2012-01-10 15:41:40 · 2275 阅读 · 0 评论 -
北京54转西安80坐标系
注意:这段代码只能参考,每个具体的项目中,转换参数、偏移量、标准是不同的。 有兴趣的同仁可以拿去研究、批评 private bool ConvertXY54C80() { string filePath = this.textEdit1.Text; if (filePath.Length > 0)转载 2011-11-21 08:57:57 · 1006 阅读 · 1 评论 -
由投影坐标计算地理坐标
由投影坐标(532468.123456,2555456.654321)计算地理坐标(114.123456,23.6543231) private IPoint getGeoPoint(double x, double y) { IPoint pProPoint = new ESRI.ArcGIS.Geometry.Point();转载 2011-11-21 08:59:23 · 1391 阅读 · 0 评论 -
调用GP工具
实例:调用GP工具,DWG转换为SHP,不过好像属性信息没有转换过去。 private void ConvertCAD2Shp(string filePath, string outPutPath){ private Geoprocessor gp = null; gp = new Geoprocessor();转载 2011-11-21 09:01:20 · 679 阅读 · 0 评论 -
mapcontrol加载注记图层
IFeatureLayer featLyr = new FeatureLayerClass(); featLyr.FeatureClass = currFeatCls; FeatureLayerClass aa = featLyr as FeatureLayerClass;转载 2011-11-21 09:03:05 · 682 阅读 · 1 评论 -
FeatureLayer,FeatureDataset,FeatureClass,Feature几个概念一点点总结
刚学AE,其中很多概念都模糊不清。经过一段时间的摸索总结,对FeatureLayer,FeatureDataset,FeatureClass,Feature几个概念有了一点认识。拿出来分享一下,有错误的请多多指教,共同进步.FeatureLayer:要素图层,承载要素数据。几个重要的接口如下:IFeatureLayer接口,用于管理要素图层的数据源,即要素类(FeatureClass)转载 2011-11-22 13:48:04 · 4395 阅读 · 0 评论 -
polyline轉polygon不同情況buffer的實現方法
做一個運輸署的project時需要實現一個線轉面(polyline to polygon)的函數,有點像buffer,有個buffer distance, 但是在頭尾兩邊不能是圓弧,而是直線.(確實夠搞得...)參考了一下網上的資料,將幾種類似的buffer做了一下,效果如下圖。(左上角為polyline,用它生成其他3種buffer.注意三個polygon紅色框框位置的差別 )先转载 2011-11-22 09:30:54 · 2269 阅读 · 0 评论 -
关于IFeatureClass和IFeatureLayer中的Search的区别
近来做关于打开图层属性表时有个小发现,就是在遍历图层中的要素时要用的Search方法,但是IFeatureClass和IFeatureLayer中都有这个方法,到底用哪个呢?测试了下,如果用IFeatureClass中的Search方法,那么打开的是原始图层中所有元素的属性,那么即使我对一个图层进行了编辑,比如删除了这个图层中的某些要素,但是打开属性表时里面的数据内容还是原始图层的内容。因此,要想转载 2011-11-22 13:59:26 · 7092 阅读 · 3 评论 -
绘制3维文字标注(IText3DElement )
static IGraphicsLayer m_GraphLayer = null; public static void Draw3DText(IGlobe pGlobe, double thisx, double thisy, string text, int Fsize, int red, int green, int blue) {转载 2011-11-23 15:56:40 · 1125 阅读 · 0 评论 -
ArcEngine标注和注记
标注和注记是ArcEngine中提供的两种使用文字信息标注地图要素的方式.其中标注是作为图层的属性存在的,可以动态创建,注记作为地理要素被存储.需要注意的是Shp文件不支持注记. 绘制标注的方式有两种.让我们先看第一种: 1.使用TextElment绘制标注. 这种方法的原理就是把属性表中的某个属性创建TextElment对象,然后使用IGraphicsContainer 的转载 2011-11-23 15:57:47 · 6944 阅读 · 1 评论 -
IFeatureClass--2
IFeatureClass.GetFeatures Method[Visual Basic.NET] Public Function GetFeatures(ByVal fids As Object,ByVal Recycling As Boolean) As IFeatureCursor[C#] public IF转载 2011-11-25 16:20:10 · 2531 阅读 · 0 评论 -
IFeatureClass --1
IFeatureClass用于访问控制要素类行为和属性的成员IFeatureClass接口是获取和设置要素类属性的主要接口。例如,使用IFeatureClass接口获取要素类类型、获取满足查询条件的要素数目或在要素类中创建新要素。IFeatureClass接口继承了IObjectClass接口。成员AddField 向这个类中添加一个字段。AddIndex转载 2011-11-25 16:20:38 · 1711 阅读 · 0 评论 -
IFeatureClass --3
1、插入 /// ///向featureclass中批量插入features ,批量插入features,用buffer的方法,要比循环一个个Store的方法快 /// /// 操作数据所在的IFeatureClass private void InsertFeatures( IFeatureClass pFeatureClass , List pGeos ) { IF转载 2011-11-25 16:21:45 · 1103 阅读 · 0 评论 -
IHookHelper
IHookHelper 主要在用在自定义类型于AE带的的ICommand或ITool等,IHookHelper m_hookHelper = new HookHelperClass();m_hookHelper.Hook = this.axMapControl1.Object ;这样就可以把AxMapControl传递给其它要用到的地方,再通过IHookHelper.ActiveView和转载 2011-12-01 15:05:02 · 1338 阅读 · 0 评论 -
C#+AE 创建几何网络
几何网络必须存在数据集中,Engine创建的时候要有geodatabase updata 许可,我的数据库是个人数据库。先看一下ArcMap是怎么创建的在catalog中打开创建几个网络的向导几何网络的名称选中参与网络的要素是否启用enable字段数据集的角色创建权重字段转载 2011-12-05 16:00:39 · 2114 阅读 · 0 评论 -
ArcEngine 渲染的使用
1.Feature的基本渲染方法 Feature的常用的绘制方法包括: 1.简单绘制 2.唯一值绘制/多字段唯一值绘制 3.点密度/多字段点密度绘制 4.数据分级绘制 5.质量图(饼图/直方图) 6.按比例尺渲染 7.比例符号渲染 1.简单渲染 简单渲染是ArcEngine的默认渲染,我们打开一个FeatureClass,建立一个转载 2011-12-16 10:45:07 · 1115 阅读 · 1 评论 -
ArcEngine 10.2 捕捉使用
最近看了下ArcEngine的捕捉,记录下,以备后用,如果转载,请注明出处。 除了自己编码实现的捕捉效果,ArcEngine主要通过两个接口实现捕捉,即ISnappingEnvironment和IEngineSnapEnvironment,刚开始我看到这两个东东,一直以为是ArcEngine里面使用捕捉的两个接口,实际上根本不是这么回事,是捕捉的两种实现方式,网上大多是IEngineSn...原创 2018-11-10 16:15:12 · 1788 阅读 · 3 评论