ArcGIS 开发的一些知识学习点
由于文章太多,不便转载,现主要列举如下:
ArcGIS Runtime支持的GP工具列表 目录(?)[-] Standard版本Standard 空间分析扩展Standard 3D分析扩展Standard 网络分析扩展 目前ArcGIS Runtime有两个版本 Basic版本和Standard版本,而Basic版本不支持Geoprocessing(这里指的是本地的Geoprocessing),对于Ge...
Private Sub showLegend() If Not pGroupElement Is Nothing Then pGroupElement.ClearElements() End If Dim graphicsContainer As IGraphicsContainer graphics...
ArcSDE数据被锁定后的解锁方法 在sde数据被锁定的情况下,编辑、创建featureclass或者注册版本的时候会报告:Lock request conflicts with an established lock。多半情况下关闭数据库连接可以解决这个问题,但有时候问题依然存在。 ArcSDE数据被锁定后的解锁方法 在sde数据被锁定的情况下,编辑、创建featureclas...
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方式做了介绍,也通过两个相同的功...
高级话题 延迟加载 包含Add-in的程序集默认是在点击菜单或工具栏上的某一项目(例如按钮、命令)才正式加载到应用程序中的,这样做的好处就是节约了应用程序所使用的内存空间。如果要控制对象是否可以被点击,则需要在按钮或命令对象的OnUpdate事件里设置其Enable属性,并在对应的esriaddinx文件里对应的XML节添加onDemand属性,并设置为false,这样Add-in就能在应用程...
由于目前很多基础在线底图都是切片形式的缓存地图服务,每当我们在ArcMap中使用时,往往会发觉缺少了类似ArcGIS FlexViewer或谷歌地图的比例尺级别缩放滑块,虽然ArcMap支持对这类地图图层进行重采样处理,做到无级别缩放,但这种体验和我们在网页上的访问操作很不一致,客户往往需要点击Zoom to Nearest Cache Resoulution按钮来调整比例尺。为了给客户提供一致的...
Add-in的开发流程 使用VisualStudio的新建工程向导,选择ESRI提供的ArcGIS Add-in模板,这些Add-in模板针对ArcGIS Desktop所包含的每一个应用程序。选择完模板后,系统就会要求我们立即选择第一个添加到Add-in里的对象类型。之后,如果我们有需要往Add-in里添加更多其它的对象类型的话,可以通过添加新项目向导来创建新对象。 Add-in的工...
Add-in的概念 ArcGIS的10引入了几个新的和创新的功能,使您更容易定制和扩展ArcGIS桌面应用,包括新的桌面插件模型。Add-in可以理解为可以包含多种UI和非UI对象的插件包概念。其中支持的对象类型包括(主要分两大类): 第一大类:交互类 按钮和工具: 按钮和工具是简单的控制,可以出现在工具栏按钮或在个案上的菜单。 组合框: 一个组合框提供了一个项目的下拉列表,可以选择...
// arcgis10新特性,不支持原有几何属性中修改内容,需要副本或者新实例中实现 [2012.1.10 JOJO] 把原来直接读取的shape变成副本 //IGeometry pGeo = m_pCurFeature.Shape; IGeometry pGeo = m_pCurFeature.ShapeCopy; 否则在重新赋值新的属性时,会报错...
1.Feature的基本渲染方法 Feature的常用的绘制方法包括: 1.简单绘制 2.唯一值绘制/多字段唯一值绘制 3.点密度/多字段点密度绘制 4.数据分级绘制 5.质量图(饼图/直方图) 6.按比例尺渲染 7.比例符号渲染 1.简单渲染 简单渲染是ArcEngine的默认渲染,我们打开一个FeatureClass,建立一个...
几何网络必须存在数据集中,Engine创建的时候要有geodatabase updata 许可,我的数据库是个人数据库。 先看一下ArcMap是怎么创建的 在catalog中打开创建几个网络的向导 几何网络的名称 选中参与网络的要素 是否启用enable字段 数据集的角色 创建权重字段...
IHookHelper 主要在用在自定义类型于AE带的的ICommand或ITool等, IHookHelper m_hookHelper = new HookHelperClass(); m_hookHelper.Hook = this.axMapControl1.Object ;这样就可以把AxMapControl传递给其它要用到的地方,再通过IHookHelper.ActiveView和...
1、插入 /// ///向featureclass中批量插入features ,批量插入features,用buffer的方法,要比循环一个个Store的方法快 /// /// 操作数据所在的IFeatureClass private void InsertFeatures( IFeatureClass pFeatureClass , List pGeos ) { I F...
IFeatureClass 用于访问控制要素类行为和属性的成员 IFeatureClass接口是获取和设置要素类属性的主要接口。例如,使用IFeatureClass接口获取要素类类型、获取满足查询条件的要素数目或在要素类中创建新要素。IFeatureClass接口继承了IObjectClass接口。 成员 AddField 向这个类中添加一个字段。 AddIndex...
IFeatureClass.GetFeatures Method [Visual Basic.NET] Public Function GetFeatures(ByVal fids As Object,ByVal Recycling As Boolean) As IFeatureCursor [C#] public IF...
标注和注记是ArcEngine中提供的两种使用文字信息标注地图要素的方式.其中标注是作为图层的属性存在的,可以动态创建,注记作为地理要素被存储.需要注意的是Shp文件不支持注记. 绘制标注的方式有两种.让我们先看第一种: 1.使用TextElment绘制标注. 这种方法的原理就是把属性表中的某个属性创建TextElment对象,然后使用IGraphicsContainer 的...
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) {...
近来做关于打开图层属性表时有个小发现,就是在遍历图层中的要素时要用的Search方法,但是IFeatureClass和IFeatureLayer中都有这个方法,到底用哪个呢?测试了下,如果用IFeatureClass中的Search方法,那么打开的是原始图层中所有元素的属性,那么即使我对一个图层进行了编辑,比如删除了这个图层中的某些要素,但是打开属性表时里面的数据内容还是原始图层的内容。因此,要想...
刚学AE,其中很多概念都模糊不清。经过一段时间的摸索总结,对FeatureLayer,FeatureDataset,FeatureClass,Feature几个概念有了一点认识。拿出来分享一下,有错误的请多多指教,共同进步. FeatureLayer: 要素图层,承载要素数据。几个重要的接口如下: IFeatureLayer接口,用于管理要素图层的数据源,即要素类(FeatureClass)...
做一個運輸署的project時需要實現一個線轉面(polyline to polygon)的函數,有點像buffer,有個buffer distance, 但是在頭尾兩邊不能是圓弧,而是直線.(確實夠搞得...)參考了一下網上的資料,將幾種類似的buffer做了一下,效果如下圖。 (左上角為polyline,用它生成其他3種buffer.注意三個polygon紅色框框位置的差別 ) 先...
IFeatureLayer featLyr = new FeatureLayerClass(); featLyr.FeatureClass = currFeatCls; FeatureLayerClass aa = featLyr as FeatureLayerClass;...
实例:调用GP工具,DWG转换为SHP,不过好像属性信息没有转换过去。 private void ConvertCAD2Shp(string filePath, string outPutPath) { private Geoprocessor gp = null; gp = new Geoprocessor();...
由投影坐标(532468.123456,2555456.654321)计算地理坐标(114.123456,23.6543231) private IPoint getGeoPoint(double x, double y) { IPoint pProPoint = new ESRI.ArcGIS.Geometry.Point();...
注意:这段代码只能参考,每个具体的项目中,转换参数、偏移量、标准是不同的。 有兴趣的同仁可以拿去研究、批评 private bool ConvertXY54C80() { string filePath = this.textEdit1.Text; if (filePath.Length > 0)...
ArcCatalog里建个DataSet和FeatureClass 就知道关系了 FeatureClass 可以看做是一张表,有相同空间参考的FeatureClass 放在一个DataSet里,特别是做拓扑分析和几何网络。 layer只是对库里的featureclass的引用,在ArcMap里运用下join功能,再看库里的数据,就会比较清晰了 layer 是显示时候的对象 储存了...
你们的评论、反馈,及对你们有所用,是我整理材料和博文写作的最大的鼓励和唯一动力。欢迎讨论和关注!
没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。
没有整理与归纳的知识,一文不值!高度概括与梳理的知识,才是自己真正的知识与技能。 永远不要让自己的自由、好奇、充满创造力的想法被现实的框架所束缚,让创造力自由成长吧! 多花时间,关心他(她)人,正如别人所关心你的。理想的腾飞与实现,没有别人的支持与帮助,是万万不能的。