ArcEngine 入门教程-帮助如何使用
声 明1 : 本人才疏学浅,用郭德纲的话说“我是一个小学生”,如有错误,欢迎讨论,请勿谩骂^_^。
声 明2 : 原创博客请在转载时保留原文链接或在文章开头加上本人博客地址,否则保留追究法律责任的权利。
缘起
授人以鱼不如授人以渔,学习任何一门技术,我相信都是从帮助文档入手的,ArcEngine也不例外。
本文主要分享如何使用ArcEngine帮助
,快速找到自己想要的信息
以及如何利用帮助整体的学习官方的示例代码
。
安装
ArcEngine安装参考博文:传送门
ArcEngine帮助
本地帮助:位于C:\Program Files (x86)\ArcGIS\DeveloperKit10.4\Help\VS\ArcObjects
,可以在开始菜单直接找到。
在线帮助:传送门(10.6)、传送门(10.1~10.3)
本地其他帮助:本地还有本地代码片段和示例代码工程,帮助大家学习ArcObjects
GitHub资源:传送门
帮助分类
帮助分两大块内容:
- ArcObjects Help for .NET developers:主要包括AO开发的一些帮助(相当于是快速入门的示例)
- ArcObjects reference:主要包括AO中的命名空间下的一些类和接口(相当于是API)
帮助如何使用
本地帮助安装
正常情况: 一般先安装VS软件
,然后再安装ArcObjects
,就可以在开始菜单里找到本地帮助了。
其它情况:如果你的开始里没有帮助文档,或者你的VS帮助里找不到AO的相关帮助,可以参考这篇博文(传送门)进行配置。
使用帮助
可以利用帮助查询接口、类,从查询的结果中可以获取相关的信息(如适用于哪个产品,有哪些方法,这个接口或类是干嘛的,继承自哪个类、相关的备注信息以及示例代码等信息)
个人建议
- 分享一下我个人的习惯:
- 百度/谷歌相关关键字,查询代码片段。
- 利用帮助查询相关接口或类。
- 看支持哪些产品许可,是否能实现你要的功能,能实现到什么程度。
- 查询接口的时候,可以看一下哪些类实现了这个接口,顺便顺藤摸瓜,看看这个类还实现了哪些接口,是否可以利用QI来实现我们的功能。
- 移植代码,解决遇到中的问题。
- 建议认真阅读此部分内容(阅读需要有一定的英文功底,像小编这种实力不行的可以借助翻译工具)
- 学习ArcEngine的过程就是不断熟悉SDK中接口和类的过程,所以不要着急,随着时间的推移,多实践,你也会应用的很熟练。
总结:
Just do it!
Don't Worry,Be Happy!
应用实操
示例:
A:我想添加一个图层到地图中怎么添加啊?
B.Easy,请听贫道如实道来......
分析这个问题,步骤大概如下:
# `获取容器对象(Map or Scene)# 创建/获取图层(Layer)# 添加图层
步骤细分:
- 添加图层要知道往哪儿添加,是往二维地图还是三维地图中添加。
- 如果是Map,这块它的来源是MapControl控件(相关的接口是IMapcontrol2),若果是Scene,它的来源是Scene(相关的接口是ISceneControl),可以通过接口的属性获取到IMap或IScene对象。
- 如果是二维地图,地图对于的英文单词是Map,那么就在帮助中搜索IMap接口或Map类(建议先搜索接口);如果是三维地球,那么对应的就是Scene,搜索IScene接口即可。
- 搜索完毕我们可以得知一下信息
- 我们需要
添加引用ESRI.ArcGIS.Carto.dll
,并使用using应用该命名空间; - 我们还知道我们
需要有ArcGIS Desktop或ArcEngine的许可
; - 我们发现里面有个
AddLayer
的方法; - 点击AddLayer方法,
告诉我们我们参数信息
,需要ILayer接口的对象(需要我们New一个ILayer接口的对象) - 紧接着我们需要用同样的方法查询ILayer接口
- 除此之外,我们可以在帮助的最下面看到
.NET Snippets
或.NET Related Topics
,这里面会给我们提供相应的代码片段。
- 我们需要
- 按照逻辑编写代码。
练习
- 查看IFeatureWorkspace在哪个命名空间下,使用该接口需要using哪个命名空间,需要什么级别的许可,有哪些类实现了该接口
- 查看IFeatureWorkspace的OpenFeatureClass方法,了解需要什么参数,返回什么类型,顺便查看IFeatureClass类有哪些属性和方法
- 查看哪些类实现了ITool接口
- 查看IMap、IWorkspace、IFeatureLayer、IFeatureClass、ITable、IField接口,可以结合OMD理解他们之间的关系
- 尝试阅读帮助Developing with ArcGIS章节
ArcEngine 入门教程-帮助如何使用相关推荐
- ArcEngine 入门教程-控件初体验
缘起 个人总结梳理,顺便练练文笔,For me and for you like me! 目标 我一直很认同古人所说的君子性非异也,善假于物也,本文主要目的是告诉读者如何使用帮助来学习了解ArcEng ...
- Kafka入门教程与详解
1 Kafka入门教程 1.1 消息队列(Message Queue) Message Queue消息传送系统提供传送服务.消息传送依赖于大量支持组件,这些组件负责处理连接服务.消息的路由和传送.持久 ...
- 【CV】Pytorch一小时入门教程-代码详解
目录 一.关键部分代码分解 1.定义网络 2.损失函数(代价函数) 3.更新权值 二.训练完整的分类器 1.数据处理 2. 训练模型(代码详解) CPU训练 GPU训练 CPU版本与GPU版本代码区别 ...
- python tornado教程_Tornado 简单入门教程(零)——准备工作
前言: 这两天在学着用Python + Tornado +MongoDB来做Web开发(哈哈哈这个词好高端).学的过程中查阅了无数资料,也收获了一些经验,所以希望总结出一份简易入门教程供初学者参考.完 ...
- python向量计算库教程_NumPy库入门教程:基础知识总结
原标题:NumPy库入门教程:基础知识总结 视学算法 | 作者 知乎专栏 | 来源 numpy可以说是 Python运用于人工智能和科学计算的一个重要基础,近段时间恰好学习了numpy,pandas, ...
- mysql query browswer_MySQL数据库新特性之存储过程入门教程
MySQL数据库新特性之存储过程入门教程 在MySQL 5中,终于引入了存储过程这一新特性,这将大大增强MYSQL的数据库处理能力.在本文中将指导读者快速掌握MySQL 5的存储过程的基本知识,带领用 ...
- python tensorflow教程_TensorFlow入门教程TensorFlow 基本使用T
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 TensorFlow入门教程 TensorFlow 基本使用 TensorFlow官方中文教程 TensorFlow 的特点: 使用图 (graph) 来 ...
- air调用java,AIR2.0入门教程:与Java应用交互
在之前的一篇文章中,我介绍了如何使用AIR2.0新增的NativeProcess类与本地进程进行交互和通讯,在那个例子里面我们使用了C++ 的代码,实际上只要是基于命令行的标准输入输出,AIR2.0的 ...
- 【Arduino】开发入门教程【一】什么是Arduino
Arduino Arduino 是一款便捷灵活.方便上手的开源电子原型平台,包含硬件(各种型号的arduino板)和软件(arduino IDE).它适用于艺术家.设计师.爱好者和对于"互动 ...
最新文章
- 使用TinySpider实战抓取自己博客中的内容
- 微型小乐器 : MicroSynth 小巧而优美
- GMapbook中文版上线
- io流技术java_技术文章-java中的IO流
- 推荐一简单易用的脑图制作工具
- P1892-团伙【图论,并查集】
- python鼠标事件 详解_Python selenium键盘鼠标事件实现过程详解
- java使用外部库_在Java中使用外部库
- Centos系统python2.x升级python3.x
- 验证码原理详解与案例
- 基于OpenCV的PHP图像人脸检测识别…
- Zint生成二维码环境搭建
- cesium获取经纬度
- syn 攻击脚本 python_Python Scapy实现SYN Flood攻击
- 纯字母域名批量注册的详细步骤
- myChat - 第三方ChatGPT原生客户端,支持win和mac系统
- 教你Zbrush 4R7增强光滑笔刷强度方法
- 初识Flutter中的Layer
- 2022湖南最新建筑八大员(市政)考试试题题库及答案解析
- python中画地图map的用法_使用basemap和python在地图中绘制海洋