ArcObjects SDK 019 SpatialReference】的更多相关文章

ArcObjects SDK(以下简称AO)10.1只支持vs2010,如果装了vs2012,再安装AO会提示一串鸡肠(英文),意思是AO10.1只支持vs2010 想在2012下安装,可以通过修改注册表方法欺骗安装验证,造成有vs2010的假象 在注册表路径    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\10.0\   添加一项,字符串值(REG_SZ),值为    C:\Program Files (x86…
1.为什么再设计一套App-Command-Tool框架 为什么我们要自己再设计一套App-Command框架,而不直接使用AO API中的AxControl-ICommand这套已经非常好的框架呢? 1.宿主不同.我们系统的宿主对象除了可能要包含MapControl等地图显示控件外,还可能会包含我们业务系统特有的信息.例如当前登录用户,在一些Command中,可能需要根据当前登录用户的觉得来判断功能是否可用等. 2.AO中的ICmmand和ITool已经和UI绑定到一起了,我们并不想直接用AO…
1.ICommand接口 ICommand接口是插件协议之一,继承该接口的类都可以成为命令.即点击一下执行,不主动与宿主发生鼠标和键盘交互.该接口包含的重要成员如下表所示. 序号 名称 类型 描述 1 Bitmap Int 命令上显示的图标 2 Caption String 命令上显示的文字 3 Checked Bool 命令是否处于选中状态 4 Enabled Bool 命令当前是否可用 5 OnClick 函数 点击命令时,触发执行的函数 6 OnCreate 函数 创建该命令时,调用的函数…
1.基于Arcobjects SDK可以做什么 基于Arcobjects SDK开发,大部分情况下就是做桌面GIS应用程序.AO写的代码是不能直接在Web服务上运行的,但如果你前端是JS,需要后端处理数据,也可以把AO写的代码封装成exe,在Web服务中取调exe文件,通过文件传递参数以及进度信息也是可以的. 2.基于ArcObjects开发的缺点 1.基于COM封装的,调试的时候比较麻烦,有时候报的错误信息也不太明确,有些定义的对象需要手动释放内存. 2.上手难度比较大. 3.32位的,对内存…
1.为什么要宏观上看ArcObjects SDK ArcObjects SDK库是一个非常庞大复杂COM组件集合,ArcGIS10.0有1000多个枚举.90多个结构体.5000多个接口以及4000多个类,合计10000多.现在到10.8版本,是更多了. 当然我们常用的只是其中的一小部分,即使是一小部分,那也是一个错综复杂的关系网.我们需要把这个关系网理清楚. 如果在网上搜索ArcObjects SDK的结构,大概率会搜到类似下面的图. 甚至还有下面的图. 如果你对ArcObjects SDK中…
1.开发环境 基于ArcObjects SDK开发,开发环境一般选用Visual Studio,开发语言使用C#,开发包使用ArcObjects SDK for .Net.UI有的使用Winform,也可以使用WPF.调用的时候,不关心接口或类是否可以在ArcEngine Runtine下运行,验证的时候,也是按照Desktop环境验证,开发的软件直接在ArcGIS Desktop环境下运行. 一般情况下,我使用Visual Studio+ArcObjects SDK for .Net+C#+W…
1.什么是ArcObjects SDK 在网上搜索什么是ArcObjects,会搜到如下的定义. 这个定义比较准确,也比较容易理解. 2.什么是ArcEngine 在网上搜索ArcEngine,一般会搜到以下定义. 这段话讲的非常清楚明白,ArcGIS Desktop.ArcGIS Engine和ArcGIS Server都是基于核心组件库ArcObjects搭建.也就是说ArcGIS Desktop和ArcGIS Engine是同一个级别的产品. 但第四段说ArcGISEngine的出现对于需…
1.Mxd文件介绍 ArcGIS的地图文件为.mxd扩展名.Mxd文件的是有版本的,和ArcGIS的版本对应.可以在ArcMap中的File-Save A Copy,保存一个地图拷贝的时候选择Mxd文件的版本,支持的版本如下图所示. 因为我是用ArcMap 10.8截的图,所以这还需要再加一个ArcMap 10.8 Document.一个地图文件包含一个布局对象,一个多或者地图对象以及其他一些附属信息.地图文件不直接存储例如.shp..tif等实际数据,只是存储一些图层信息以及图层对这些数据的引…
1.如何找到ToolBox 通过Geoprocessing菜单上的ArcToolbox菜单项,可以打开ArcToolbox面板. 工具栏上也有一个ArcToolbox的按钮,点击该按钮也可以打开. 通过Arccatalog打开. 2.ArcToolbox面板 ArcToolbox面板如下图所示. ArcToolbox共分为三级,工具箱.工具集和工具.我们经常遇到的有前面带锤子的工具,是ArcGIS安装的时候就安装和注册的系统工具,前面是文本样式的是用py脚本创建的工具,但用的时候,感觉没什么差别…
1.Geoprocessor和IGPProcess Geoprocessor是ArcObjects SDK中定义Tool执行器.IGPProcess接口是ArcObjects SDK中定义的ArcTool接口.也就是说ArcObjects SDK定义的ArcTool都会继承该接口实现.理论上,在ArcToolbox的出现的系统工具都应该可以在SDK中找到. Geoprocessor如何使用呢?参考下面的代码. private static Geoprocessor _Geoprocessor =…