GIS二次开发 教学大纲
GIS二次开发第1课
![GIS二次开发第1课](https://img.taocdn.com/s3/m/7ac003dcbb4cf7ec4bfed009.png)
Hale Waihona Puke ArcGIS 开发工具包,包括ArcGIS开发帮助、组件帮助、对象模型图和示例
ESRI Developer Network: /提供有关ArcGIS开发的最新信
息,包括更新的示例和技术文档
第一课 GIS二次开发基础
ArcGIS 产品体系
ArcObjects的类之间存在四种关系
依赖关系 关联关系
组合关系
类型继承
对象模型示例
WorkspaceFactory
Map
*
Workspace Layer
MapControl
Curve
Map Segment Path PolyCurve
什么是组件对象模型
软件重用和开发效率始终是软件开发的核心问题。
在早期(面向过程语言),人们为了重用,将一些基本的数学计算 函数和界面设计函数设计成函数库,让其他软件开发人员调用。它
为应用开发者提供了方便,但是重用的粒度太小。
面向对象语言的出现,提高编程的粒度。面向对象语言的基本单位 是类,它封装了数据成员和函数成员 ,将最小组件的粒度提高了一
个等级。但是,一个类提供很多种方法和属性,使用和管理很不方
ArcGIS Engine—通过多种应用程序接口建立自定义应用程序的嵌 入式GIS组件库。
ArcGIS Server—为企业和Web计算框架建立服务器端GIS应用程 序的一个平台,可用于建立Web服务和Web应用程序。
ArcIMS—通过开放Internet协议发布地图、数据和元数据的GIS
Web服务器。
COM知识要点
COM的缺陷
GIS二次开发使用PPT教案
![GIS二次开发使用PPT教案](https://img.taocdn.com/s3/m/e0661f3481c758f5f71f6794.png)
Class flyBird inherit from Bird{ String Name; Publice fly { … }
}
第15页/共45页
在OOP中,继承的概念很好的支持了代码的重用 性(reusability),也就是说,我们可以向一 个已经存在的类中添加新的特性,而不必改变 这个类。这可以通过从这个已存在的类派生一 个新类来实现。这个新的类将具有原来那个类 的特性,以及新的特性。而继承机制的魅力和 强大就在于它允许程序员利用已经存在的类 (接近需要,而不是完全符合需要的类),并 且可以以某种方式修改这个类,而不会影响其 它的东西。
第23页/共45页
第24页/共45页
DCOM
基于分布式环境下的COM被称作 DCOM(Distribute COM,分布式组件对象模 型)。
DCOM是ActiveX的基础,它实现了COM对象 与远程计算机上的另一个对象之间直接进 行交互。
第25页/共45页
ActiveX与ActiveX控件
第26页/共45页
ActiveX的内容
ActiveX控件(ActiveX Control):
用于向WEB页面、Microsoft Word等支持 ActiveX 技术的容器(Container)中插入 COM对象;
ActiveX文档(ActiveX Document):
用于在Web Browser或者其它支持ActiveX的 容器中浏览复合文档(非HTML文档),例如 Microsoft Word文档、Microsoft Excel文 档或者用户自定义的文档等
第27页/共45页
ActiveX的内容
ActiveX脚本-(ActiveX Scripting)
8256013 GIS二次开发课程设计 教学大纲.doc
![8256013 GIS二次开发课程设计 教学大纲.doc](https://img.taocdn.com/s3/m/99be4c85a417866fb94a8e86.png)
《GIS设计开发课程设计》教学大纲课程代码:8256013 课程类别:专业必选学分:2实践周数:2一、目的与任务GIS二次开发课程设计是在学生学习专业课程的基础上,开设的一门专业综合实习课,该课程以程序设计开发为主,涉及到面向对象程序设计的一般知识,开发环境及编程语言,及GIS系统中常用的数据组织方式、地图的表达、可视化、查询以及系统设计等多方面综合性知识。
因此它需要学生了解面向对象程序设计,开发环境及编程语言,掌握GIS地图的表达、可视化、查询等的实现方式。
该课程注重理论基础知识和基本技能的掌握和应用,创新意识和动手能力的培养,自我学习能力的提咼。
适用专业:GIS专业。
二、内容与要求利用ArcEngine组件,结合C#或VB. net开发环境,设计并实现华农校园地理信息系统。
2. 1系统需求分析1、华农校园图的可视2、校园内各主要地点的查询(学生日常生活相关的地方):教学楼,院系,行政单位,校医院,学生宿舍,食堂,运动场,银行,超市等3、量算分析(距离量算,面积量算)4、统计分析、专题图表达(如各校区的学生人口分布图,男女比例图)5、空间分析(如缓冲区分析)6、最短路径查询(步行、坐校巴或开车)7、补充:选址分析。
女口:新建某超市,考虑哪些因素,如何定点,如:新建教学楼,考虑哪些因素,如何定点8、补充:校巴线路合理规划:根据学生出行,学生宿舍的位置,进行校巴线路规划(要求经过每个主要区域)2. 2系统功能分解依据系统的需求分析,对功能进行分解,确定实验项目的具体内容要求。
3、1、 数据的打开可视1.1前期准备工作:数据1. 2功能实现文件:打开、保存视图显示功能:放大、缩小、漫游、全屏等 图层的管理、维护、顺序的变化、增加、删除 图层的符号化表达2、 校园内各主要兴趣点的查询2. 1前期数据准备工作(1) 兴趣点数据图层的设计,如包含字段信息:名称,简介等(2) 图层数的确定(3) 数据的采集,数据的录入2. 2功能实现实现图文双向查询。
MAPGIS二次开发讲义
![MAPGIS二次开发讲义](https://img.taocdn.com/s3/m/0ca37f3deffdc8d376eeaeaad1f34693daef10df.png)
MAPGIS二次开发讲义成熟实用的地理信息系统(GIS)的重要标志就是它提供给用户的二次开发能力。
MAPGIS提供完整的二次开发函数库。
用户完全可以在MAPGIS平台上开发面向各自领域的应用系统。
操作系统、MAPGIS开发库及MAPGIS应用程序的相互关系如下图所示:MAPGISMAPGIS应用程序空间分析窗口操作…图库操作图形、图象I/O开发库工作区管理MAPGIS二次开发函数库包括下表所列部分,这些库函数都支持Window3.某,Window95和NT操作系统。
MAPGIS二次开发函数库支持的语言包括Borlandc++,Viualc++,Viualbaic等高级语言程序设计环境。
函数库名称动态库文件32位函数库(支持Window95,NT)c,c++连接文件工作区基础函数图形显示输出工作区管理函数图形窗口操作空间分析函数地图库读取显示图形编辑函数ba32.dllMapdp32.dllw32_area.dllW32_oper.dllW32_anly.dllD32_view. dllMaped32.dllBa32.libMapdp32.libW32_area.libW32_oper.libW32_anl y.libD32_view.libMaped32.lib表1MAPGIS函数库c,c++说明文件Win_area.hMap_out.hWin_area.hWin_oper.hSpc_anly.hDb_view.hMapedi t.hvb说明文件W32_area.baMapdp32.baW32_area.baW32_oper.baW32_anly.baMaped32.ba Window3.某、Window95、WindowNT基于MAPGIS平台的应用程序MAPGIS二次开发函数采用匈牙利命名法,即动宾结构命名法,并且所有函数都以下横线开始,以便和Window函数以及其他语言函数明显区别开来,如_GetLin表示取线实体;在ViualBaic环境下,由于ViualBaic语言不能识别以下横线开始的函数名,所以库函数都以字母b开始,如bGetLin表示取线实体。
GIS二次开发第7课教程
![GIS二次开发第7课教程](https://img.taocdn.com/s3/m/fcf2110f453610661ed9f4f7.png)
其它 workspace 类型包括:
Raster Workspace: A workspace containing Grids and Images. Tin Workspace: A workspace containing TINs. CAD Workspace: A workspace containing CAD drawings.
Creating a connection file (.sde) to an Enterprise ArcSDE workspace
public IWorkspaceName open_ArcSDE_Workspace (string server, string instance, string user,string password, string database, string version)
IWorkspaceFactory接口 定义了所有工作空间工厂
对象的一般属性和方法,
用户可以通过它管理不同
类型的工作空间。
使用 IWorkspaceFactory::Create方法可以用于产生一个新的工作空间名称对 象。
public IWorkspaceName Create ( string parentDirectory, string
{ IPropertySet propertySet = new PropertySetClass(); propertySet.SetProperty("SERVER", server); propertySet.SetProperty("INSTANCE", instance);
propertySet.SetProperty("DATABASE", database);
《GIS二次开发》课程设计报告_图文.
![《GIS二次开发》课程设计报告_图文.](https://img.taocdn.com/s3/m/6e735f2d83c4bb4cf7ecd1f9.png)
《GIS二次开发课程设计》报告院(系土木工程学院专业地理信息系统小组成员吴波,黄聪,蔡劼,米锐,房海峰,黄罡起讫日期2010.01.04—2010.01.17 目录1 系统实现目标 ....................................2 系统需求分析 ....................................3 系统设计 ........................................3.1 总体设计 ..........................................................................3.2 数据库设计 ......................................................................3.3 平台选择 ..........................................................................3.4 详细设计 ..........................................................................4 功能实现 ........................................4.1 地图载入 ............................................................................4.2 添加图形要素 .....................................................................4.3 通过图形查属性………………………………………………4.4 通过属性查询图形……………………………………………4.5 通过位置查询图形……………………………………………4.6 缓冲区分析……………………………………………………附件 ..............................................1 系统实现目标通过本系统的实施,建立公共灾害信息查询系统,主要针对于火灾和交通事故。
第七章 GIS二次开发入门
![第七章 GIS二次开发入门](https://img.taocdn.com/s3/m/814a9862caaedd3383c4d3c9.png)
1.2.4 GIS开发方式的选择
独立开发难度太大; 宿主型二次开发受GIS平台所提供的脚本语言的限制; GIS组件开发模式结合了GIS平台软件与可视化开发 平台的组件开发模式的优点.不仅能大大提高应用 系统的开发效率,而且使用可视化软件开发工具开 发出来的应用程序具有更好的用户界面,更强大的 数据库功能.可靠性好,易于移植,便于维护,学 习周期较短,容易上手.
�
第七章 GIS二次开发入门
主要内容
GIS二次开发概述
组件式GIS
1.GIS二次开发概述Fra bibliotekGIS开发模式
GIS开发方式
1.1 GIS开发模式
自行开发模式 委托开发模式 联合开发模式
1.1.1 自行开发模式
自行开发模式是指由用户依靠自己的力量 独立完成系统的设计与开发. 自行开发方式需求明确,开发费用低,易 于维护,但是对用户的要求较高.
2.2.1 Component技术
CORBA标准主要分为3个层次:对象请求代理,公共对象服 务和公共设施. 最底层是对象请求代理ORB即对象总线,是CORBA的核心, 它为所有对象提供了一种面向总线的机制,是分布对对象系 统中的"软总线"; 在ORB之上定义了很多公共服务,可以提供诸如并发服务, 目录命名服务,事务(交易)服务,安全服务等各种各样的 服务; 最上层的公共设施则定义了组件框架,提供可直接为业务对 象使用的服务,规定业务对象有效协作所需的协定规则.
2.组件式GIS(ComGIS)
Component技术 ComGIS的定义 ComGIS系统的优点 ComGIS的不足 GIS组件的功能 GIS组件产品
2.2.1 Component技术
Compenent技术是在面向对象技术(OOP-Object Oriented Programming)基础上发展起来的,并成 为当今软件开发技术的主要潮流. . 面向对象技术的三大特征是封装性,继承性,多态 性.组件技术正是面向对象技术的扩展,不仅具有 这三个特性,而且更适合于现代软件更新快,规模 大,强调写作的软件环境.
GIS二次开发
![GIS二次开发](https://img.taocdn.com/s3/m/3040fd2d580216fc700afddc.png)
《GIS二次开发》课程课间实验报告实验项目:基于Arcengine10.1开发环境搭建及入门程序姓名:吴静学号631201040229班级:测绘工程专业2012级 2 班指导教师:刘国栋学习日期:2015年05月21日测量与空间信息处理实验一、实验内容 (1)二、实验目的 (1)三、软件平台 (1)四、实验步骤 (1)4.1打开Visual Studio 2010并创建应用程序项目 (1)4.2添加ArcEngine相关的引用z (2)4.3了解工具箱的控件 (2)4.4添加控件至窗体 (3)4.4.1 MenuStrip菜单栏 (3)4.4.2 ToolBarControl工具栏 (4)4.4.3 StatusSrtip状态栏 (5)4.4.4 TOCControl与MapControl (5)4.4.5 AxLicenseControl控件 (5)4.5 编辑控件属性 (5)4.5.1 ToolbarControl属性设置 (6)4.5.2 TOCControl属性设置 (6)4.5.3 MapControl属性设置 (6)4.5.4配置license (7)4.6检查license (7)4.7运行应用程序 (8)五、实验小结 (8)一、实验内容运用Visual Studio 2010 创建出一个类似于ARCMAP主界面的桌面应用程序二、实验目的2.1熟悉Visual Studio 的工作环境,学会建立工作项目;2.2通过对控件的添加,熟悉和掌握ArcEngine中各控件的作用;2.3对空间的属性进行变化,从而进一步了解可视化的意义。
三、软件平台Visual Studio 2010(包含ArcEngine 10.1的相关控件)四、实验步骤4.1打开Visual Studio 2010并创建应用程序项目首先打开Visual Studio 2010,选择Visual C#编程语言,创建一个Windows 窗体应用程序项目,如图4-1所示:图一创建Visual C#的Windows窗体应用程序4.2添加ArcEngine相关的引用z在菜单栏中选择“项目”,再选择“添加引用”,再在弹出的添加引用窗口中选择“.NET”,找到ESRI相关组件,选中并确定,即完成ArcEngine 10.1的相关组件在Visual Studio 2010中的添加。
ArcGIS_Engine二次开发讲义
![ArcGIS_Engine二次开发讲义](https://img.taocdn.com/s3/m/8156cdb5f121dd36a32d8279.png)
ArcGIS Engine二次开发实习初级讲义目录1 ArcGIS、ArcObjects和ArcGIS Engine简介.................................................................... - 3 -1.1 ArcGIS简介 ................................................................................................................ - 3 -1.2 ArcObjects简介 .......................................................................................................... - 4 -1.3 ArcGIS Engine简介.................................................................................................... - 5 -2 ArcGIS控件介绍.................................................................................................................... - 7 -2.1 ArcGIS控件简介 ........................................................................................................ - 7 -2.2重要控件简介............................................................................................................... - 9 -3 ArcGIS Engine二次开发入门 ............................................................................................ - 16 -3.1 ArcGIS Engine开发起步——第一个简单的地图显示程序 .................................. - 16 -3.2 属性查询.................................................................................................................... - 23 -3.3 空间查询.................................................................................................................... - 27 -3.4 BaseCommand开发实例 .......................................................................................... - 36 -3.5 BaseTool开发实例.................................................................................................... - 38 -3.6通过代码添加图层..................................................................................................... - 42 -3.7基于比例尺显示地图................................................................................................. - 44 -3.8 构建一个简单的GIS应用........................................................................................ - 46 -4.问题解决方法及帮助文档的使用........................................................................................ - 58 -4.1使用ArcObjects开发帮助系统............................................................................... - 58 -4.2阅读对象模型图(Object Model Diagram)......................................................... - 62 -1 ArcGIS、ArcObjects和ArcGIS Engine简介1.1 ArcGIS简介ArcGIS提供了一个可伸缩的框架,可以为独立用户或者多用户,既可以在桌面端也可以在服务器端提供GIS。
《GIS二次开发》课程标准
![《GIS二次开发》课程标准](https://img.taocdn.com/s3/m/2f526b03b5daa58da0116c175f0e7cd1842518cc.png)
《GIS二次开发》课程标准一、课程说明注:1.课程类型(单一选项):A类(纯理论课)/B类(理论+实践)/C类(纯实践课)2.课程性质(单一选项):必修课/专业选修课/公共选修课3.课程类别(单一选项):公共基础课/专业基础课/专业核心课4.合作者:须是行业企业人员,如果没有,则填无二、课程定位本课程是测绘与地理信息系统专业的一门专业核心课程。
是一门实践性很强的课程,必须通过上机操作才能掌握所学的知识,强调讲授与上机操作相结合,保证学生有充分的上机条件。
通过本课程的学习,学生能够掌握计算机网络语言和ArcGISEngine相关方面的特点,掌握它们的主要应用领域和发展方向,具备一种基于C#语言开发的ArcGIS产品二次开发能力,为后续的学习,打下良好基础。
三、设计思路本课程按照学生掌握GIS应用开发技能的顺序进行组织,坚持以理论够用为度,以培养学生掌握GIS二次开发技能为主,将课程知识点与学习任务整合到设计的项目中,通过上机实践,让学生掌握C#语言实现对GIS的二次开发。
其总体设计思路是:以C#作为开发语言,结合大量实例,掌握ArcGISEngine10.0进行GIS二次开发的方法、过程和技巧。
主要包括ArcGISEngine接口的概念,利用ArcGISEngine构建GIS基本框架的方法,在ArcGISEngine环境下空间数据访问与查询、符号化显示与符号库定制、外部属性数据操作与专题图制作、地图整饰与打印输出、空间数据裁剪、地形分析、地图配准,以及空间数据图饰符号标注等功能的实现方法。
四、课程培养目标通过本课程的学习,让学生掌握GIS二次开发应具备的相关技能,学会C#开发工具,对GIS进行二次开发的方法,为测绘与地理信息专业后续课程提供支撑。
1.专业能力完成的安装与配置完成ArcGISEngine10.0的安装完成ArcGISEngine基础控件的加载完成GIS地图数据加载完成GIS地图符号化完成GIS地图的整饰与输出2.方法能力本课程在教学过程中,以学生为主体,通过案例教学、任务驱动教学、分组讨论教学、问题探究教学等教学方法,让学生主动参与到教学过程中,以编写代码为主,不断激发学习者的学习兴趣,让学生在不断地分析问题,解决问题,推理与判断过程中,提高学习效果,达到培养实际职业技能的培养目标。
《GIS二次开发》实验教学大纲
![《GIS二次开发》实验教学大纲](https://img.taocdn.com/s3/m/dc8199e1ba0d4a7302763a81.png)
《GIS二次开发》实验教学大纲学时课程总:64学分:4实验学时:24 实验个数:6 实验学分: 1.5课程性质:必做适用专业:地理信息系统教材及参考书:《地理信息系统二次开发及案例分析》,柳林、李万武等著,武汉大学出版社,2015大纲执笔人:孟刚大纲审定人:罗怀良一、实验课的性质与任务本课程实验大纲是面向地理信息系统专业学生开设的《GIS二次开发》实验课计划指导大纲,是依据《GIS二次开发》课程教学计划指导大纲编制。
本课程主要讲述了利用C#和ArcGIS 的AO、AE组件进行ArcGIS平台上的二次开发的基本流程,结合该课程教学计划大纲的相应内容,设计了6个单项实验和综合实验,力求提高学生的动手能力,做到理论和实践相结合。
使学生在实验过程中掌握GIS二次开发的基本思想、原理,能使用C#和ArcGIS 的AO、AE组件实现基于ArcGIS的程序设计。
二、实验目的与要求1.实验目的要求学生利用所学软件开发和GIS的基础知识和理论,参考有关标准,结合一个小型GIS系统,进行分析设计。
在具体分析设计过程中,允许适当加入一些课本中没有涉及到的知识、工具以及一些新方法,作为对课程的一种扩展。
2.实验要求通过本课程设计,应使学生了解完成一个GIS二次开发的完整过程,学习相关语言及相应的GIS组件开发技术。
1)在实验中,要求学生个人独立思考,设计算法流程,编写出程序,完成上机调试,最后给出实验报告。
2) 在实验中更好地理解和掌握GIS设计与应用这门课程中所学的基本理论和方法,强化程序设计和二次开发GIS软件的能力。
三、实验项目及内容提要四、实验内容安排:实验一:简单ArcEngine程序设计1、目的要求了解和熟悉程序界面布局,使用ArcEngine控件进行布局设计出一个仿ArcMap的简单程序。
2、实验内容:编写一个仿ArcMap布局的ArcEngine程序,有菜单、工具栏、状态栏、图层和地图控件,利用SplitContainer控件实现TocControl和MapControl在运行时自由左右拖动扩展界面的程序。
ArcGIS二次开发学习内容
![ArcGIS二次开发学习内容](https://img.taocdn.com/s3/m/8f54c1f3770bf78a6529547d.png)
第一篇、基础篇:第一章、ArcGIS体系介绍1、ArcGIS概述;2、ArcGIS二次开发方式、应用范围和优缺点第二章、ArcGIS二次开发软件安装和配置1、ArcGIS Desktop10安装;2、ArcEngie10安装;3、ArcServer10安装和配置;4、开发工具VS2010安装第二篇:ArcEngine开发第三章、Arcengine开发方式入门,1、搭建开发环境:1.1、ArcEngine的LIC使用,1.2、使用代码代替LIC设置;2、ArcEngine控件使用:2.1、Map Control控件,2.2、PageLayoutControl控件,2.3、ToolbarControl使用,2.4、TOCControl使用3、ArcEngine开发,ArcMap等桌面的应用程序:3.1、BaseCommd 命令应用和使用,3.2、BaseTool工具开发应用和使用,3.3、BaseToolbar工具条应用和开发,3.4BaseMenu菜单的应用和开发,3.5、DockableWindow浮动窗口的应用和开发,3.6、Addin应用和开发,第四章、地图显示 4.1、数据加载;4.2、地图符号化;4.3、制作专题图;4.4、地图的注记和标注;4.5、地图的投影第五章Geoprocessor(GP)使用5.1、GP调用基本方法;5.2、GP错误异常处理;5.3、GP数据处理案例;5.4、GP数据分析案例;5.5、GP调用数据模型案例第六章、数据查询和分析 6.1、一般的查询分析;6.2、空间缓冲区分析第七章、地图打印输出7.1、按纸张打印;7.2、指定比例打印;7.3、切割打印;7.4、批量生成Mxd导出图片,批量打印实现;7.5、地图打印综合案例第八章、Python 8.1、Python语言;8.2、Python在ArcGIS应用;8.3、Python和数据模型(ModelBuilder);8.4、Pyhon中批量处理第三篇:ArcGIS Server 开发第九章、ArcGIS Server 开发入门9.1、ArcGIS Server开发方式介绍;9.2、ArcGIS Server配置和性能优化;9.3、ArcGIS Server地图服务发布;9.4、ArcSDE数据的连接和使用;9.5、Silverlight开发入门第十章、ArcGIS server 控件使用10.1、资源管理控件;10.2、地图显示控件;10.3、其他相关控件;10.4、自定义Tool和Command;第十一章、ArcGIS 11.1、地图选择和定位;11.2、地图的图层控制;11.3、地图符号Server地图操作使用和各种专题图操作;11.4、数据的基本编辑第十二章、ArcGIS Server GP的调用12.1、ArcGIS Server GP调用方式;12.2、ArcGIS Server GP调用工具箱的工具;12.3、ArcGIS Server GP调用自定义的数据模型;12.4、ArcGIS Server GP服务发布第十三章、ArcGIS Server Silverlight开发13.1、Silverlight数据展示;13.2、把其他数据(如Google Earth)叠加到当前数据窗口;13.3、在线编辑(Web Editing);13.4、时态感知(Time-Aware);13.5、地图服务增强(Map Service)第十四章、ArcGIS Server开发案例14.1、地图缓冲区分析;14.2、地图网络分析(最短路径和服务区分析);14.3、地图查询分析案例。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
第一章GIS软件开发基础◆本章节的主要内容一、地理信息系统定义、类型和构成二、地理信息系统的研究内容三、地理信息系统的功能(一)基本功能:1、数据采集与输入、编辑2、数据存储与管理3、数据处理与变换4、空间分析与统计(二)应用功能:资源调查、城乡规划、灾害监测四、GIS软件的发展与技术五、GIS软件的开发模式1.常见开发模式➢独立开发➢单纯二次开发➢集成二次开发2.三种开发模式比较及优缺点3.GIS软件开发模式的选择六、GIS软件的开发内容七、GIS软件开发的相关技术◆本章节的教学目的及要求目的:通过本章节的学习使学生对地理信息系统定义、类型和构成,以及GIS的功能,开发模式,开发内容等有一个基本的了解要求:使学生对本课程的GIS开发基础有一个基本的了解,为后续章节打下基础课时:2个课时◆本章节的教学重点、教学难点重点:地理信息系统定义、类型和构成,GIS的功能,GIS开发模式比较与选择难点:GIS软件的发展趋势,以及GIS开发模式比较与选择◆本章节的主体教学方式、方法主体教学方式:多媒体教学◆本章节的思考题1.GIS的定义?2.GIS常见的开发模式有哪些,其各自优缺点如何?3.GIS的功能有哪些?第二章ArcEngine 基本原理——组件对象模型◆本章节的主要内容一、ArcGIS整体架构二、ArcEngine与ArcObject的关系与区别三、ArcEngine的体系结构1.ArcEngine的库结构,ArcEngine 具有哪些功能2.ArcGIS Engine 产品和扩展四、对象组件模型COM定义,COM类,COM接口2.学习ArcEngine需要了解的COM内容五、如何阅读OMD1.OMD(Object Model Diagram 对象模型图)2.如何阅读一个OMD对象模型图3.类的类型4.类的相互关系5.接口、属性、方法的图标六、ArcEngine软件安装说明七、ArcEngine在VB 或.net环境中的应用实例八、ArcGIS的二次开发——VBA◆本章节的教学目的及要求目的:通过本章节的学习使学生对课程中所使用的ArcEngine控件有一个整体的了教,同时,对学习和使用ArcEngine控件的所必须了解的COM、OMD知识有较清楚的认识,为后面基于ArcEngine控件的开发奠定理论基础。
要求:使学生对ArcEngine,COM、OMD有较清楚的认识,为后续章节打下基础课时:2个课时◆本章节的教学重点、教学难点重点:ArcEngine的体系结构,ArcEngine与ArcObjects的区别和联系,COM、OMD 基础知识。
难点:ArcEngine的体系结构,COM理解和认识◆本章节的主体教学方式、方法主体教学方式:多媒体教学◆本章节的思考题1.ArcEngine与ArcObjects的区别和联系?2.ArcEngine 具有哪些功能?3.学习ArcEngine需要了解有关的COM内容?4.ArcEngine的体系结构?◆本章节的实践要求:1.安装ArcEngine,ArcGIS软件2.安装.net平台第三章用户界面定制--VBA开发◆本章节的主要内容一、VBA开发环境1.使用客户化对话框(Customize dialog box )2.VB编辑环境(Visual Basic Editor )3.VBA开发实例:创建工具栏(P25)二、Application对象1.Application对象简介2.Application 应用实例➢显示Application应用程序的名称➢打开一个文档三、ThisDocument对象1.Document对象简介2.IMxDocument 应用实例四、定制ArcMap的界面1.定制状态栏2.定制浮动窗口(DockableWindow)3.设置快捷键4.创建CommandBars和CommandBar五、UIControl的使用1.UIButtonControl、UIToolControl、UIEditBoxControl、UIComboBoxControl2.实例、添加一个“Tool”风格的工具(图形放大)六、使用Extension扩展ArcGIS七、VB语法介绍八、运行环境配置九、帮助文档◆本章节的教学目的及要求目的:通过本章节的学习使学生掌握VBA开发的基本步骤,能够利用VBA开发对ArcGIS 软件进行用户界面定制。
要求:使学生对VBA开发的环境、基本步骤有、方法有较清楚的认识,可利用VBA实现用户界面定制。
课时:2个课时◆本章节的教学重点、教学难点重点:理解VBA开发中ArcGIS的Application和ThisDocument两个全局变量,掌握ArcGIS中添加工具的方法,创建宏的方法。
难点:ArcGIS中添加工具的方法,创建宏的方法。
◆本章节的主体教学方式、方法主体教学方式:多媒体教学和实践教学相结合◆本章节的思考题1.ArcGIS的全局变量Application和ThisDocument的作用?◆本章节的程序实践要求:1.上机实习VBA开发:打开一个文档2.上机实习VBA开发:添加一个“Tool”风格的工具(图形放大)3.上机实习VBA开发:定制状态栏4.上机实习VBA开发:定制浮动窗口(DockableWindow)第四章ArcEngine的控件◆本章节的主要内容一、常用控件简介二、MapControl控件1.MapControl控件的接口介绍2.MapControl控件与MxD文件3.鼠标与控件的交互4.数据选择5.鹰眼程序三、PageLayoutControl控件1.控件简介2.PageLayoutControl操作MXD文件3.PageLayout控件与Map控件联动4.在PageLayout里面绘制要素5.绘制MapSurround对象6.将版式保存为文件四、TocControl控件1.控件简介2.控件成员及函数3.控件的事件五、ToolBarControl控件1.控件简介2.控件的事件3.控件的属性修改4.控件内嵌的命令、菜单、工具5.控件中AddItem命令的参数意义6.在ToolBar上右击显示Customize对话框,添加工具按钮7.ToolBarMenus的使用➢在MapControl上,右击弹出上下文菜单ToolBarMenus➢在TocControl上,右击弹出上下文菜单ToolBarMenus 六、三维控件1.三维控件简介2.SceneControl3.GlobeControl4.SceneControl 与GlobeControl的不同与联系5.三维控件的基本功能实现➢3D 控件中打开文档操作➢3D 控件的事件➢设置垂直放大因子◆本章节的教学目的及要求目的:通过本章节的学习使学生了解ArcEngine中常用控件的功能、接口和方法,并掌握如何使用MapControl,PageLayoutControl,TocControl,ToolBarControl 控件进行系统开发。
要求:使学生学会利用MapControl,PageLayoutControl,TocControl,ToolBarControl 控件提供的各种接口和方法,搭建一简单的GIS原型系统。
课时:6个课时◆本章节的教学重点、教学难点重点:MapControl控件打开MxD文件的多种方法鹰眼程序的实现PageLayoutControl操作MXD文件PageLayout控件与Map控件联动TocControl的事件ToolBarControl控件内嵌的命令、菜单、工具ToolBar上右击显示Customize对话框的代码上下文菜单ToolBarMenus的使用SceneControl 与GlobeControl的不同与联系三维控件的基本代码示例。
难点:MapControl控件打开MxD文件的多种方法鹰眼程序的实现PageLayout控件与Map控件联动上下文菜单ToolBarMenus的使用SceneControl 与GlobeControl的不同与联系◆本章节的主体教学方式、方法主体教学方式:多媒体教学和实践教学相结合◆本章节的程序实践要求:1.上机实习:利用ArcEngine的控件,进行系统界面搭建2.上机实习课本中的MapControl的每一个实例(打开mxd文件,鹰眼程序等)3.上机实习课本中的PageLayOutControl的每一个实例4.上机实习课件中TOCControl控件的实例5.上机实习课件中ToolBarControl控件的实例6.上机实习课件中GlobalControl控件的实例7.上机实习课件中SenceControl控件的实例第五章地图是如何组成的◆本章节的主要内容一、M ap的双重身份1.Map简介2.Map类所实现的接口➢IMap接口:管理图层,图形要素(代码实例讲解)➢IGraphicsContrainer接口:管理图形元素(代码实例讲解)➢IActiveView接口:负责图形的显示(代码实例讲解)➢其他接口二、数据以层划分—Layer1.图层对象的ILayer 接口2.要素图层FeatureLayer的使用➢IFeatureLayer接口管理要素图层的数据源(代码实例讲解)➢IGeoFeatureLayer接口负责要素的显示属性,例如要素的着色和标准等功能➢IGeoDataset接口管理地理要素集,仅提供两个属性Extent SpatialReference ➢IFeatureSelection接口负责管理一个图层中要素选择集的方法和属性(代码实例讲解)➢IFeatureLayerDefinition接口定义一个新的图层。
利用CreateSelectionLayer方法,将已有图层中选择集中的要素转换为一个新的图层(代码实例讲解)➢ILayerFields接口可以获得要素图层的字段情况➢IIdentify接口获得图层中单个要素的属性的捷径方法(代码实例讲解)3.往地图中加入CAD文件➢以矢量数据的方式加载(代码实例讲解)➢以栅格数据方式加载,作为背景图层使用(代码实例讲解)4.TIN图层--显示三维信息三、地图显示的幕后人—ScreenDisplay对象1.ScreenDisplay常用的接口方法和属性2.ScreenDisplay对象——绘制线符号实例四、E lement对象—可显示的和不可显示的图形1.图形元素(Graphic Element)GroupElement,MarkerElement,LineElement,TextElement2.创建各图形元素(代码实例讲解)◆本章节的教学目的及要求目的:通过本章节的学习使学生了解ArcEngine中地图是如何组成的,掌握构成地图的Map,Layer类相应的接口,方法,属性,以及地图显示ScreenDisplay类和元素 Element类的相关接口方法。