一、基本概况
课程名称:GIS设计与开发(GIS Design and Development)
课程代码:234010003
课程类别:专业核心课
学时/学分:52/3.0(其中理论36学时,实验16学时)
需预修课程:地理信息导论、GIS软件应用、面向对象系统开发基础等
适用专业:适用地理信息科学专业的本科教学
课程简介
《GIS设计与开发》从实用性和可操作性角度出发,主要采用组件式GIS的技术和方法,以常用的面向对象的设计开发语言为开发平台,以地理信息系统应用软件的基本功能设计开发为核心,实现地理信息的自动化分析和图形化显示。主要针对让学生掌握基本的GIS程序设计方法和原理,让学生具备一定的GIS二次开发能力的GIS专业本科生的一门专业基础课。
《GIS设计与开发》课程是地理信息系统专业本科生的专业必修课程。该课程计划学时为56学时,计3个学分。
二、教学目标
学生通过本课程的学习,在知识和能力等方面达到以下要求:
1.理论、知识目标:GIS应用设计与开发的基本知识。
掌握流行的GIS二次开发平台及其基本方法和原理,掌握组件式GIS设计与开发技术;熟悉基于ArcGIS平台的C/S模式GIS二次开发。
2.能力目标:培养学生分析和解决GIS二次开发有关单元操作的能力及运用基础理论分析和上机操作实践解决实际问题的能力。
3.达成目标:本课程对应人才培养方案中毕业要求的专业知识、专业技能、协作能力和创新性思维。
三、教学内容及教学要求
第一章 GIS软件开发的基础理论(讲课4学时;实验0学时)
教学内容:
课程介绍(研究内容,对象,特点,学习方法);
地理信息系统的基本概念;
空间地理位置;
应用型GIS开发的三种实现方式;
GIS开发的组件技术;
地理信息系统的设计开发;
地理信息系统的发展及趋势。
教学要求:
通过本章的学习,认识GIS的分类、组成部分,理解流行的GIS开发方式和开发模式,掌握GIS二次开发的概念和基础理论。了解对学生关于学习该门课程的基础理论和基本知识要求。
本章重点、难点:GIS二次开发的开发方式、开发模式,GIS设计与开发基础理论和原理。
第二章 GIS基本功能开发(讲课10学时;实验6学时)
教学内容:
ArcGIS开发平台介绍;
ArcGIS Engine的组件;
地理信息系统基本功能的设计开发;
信息检索功能的设计与实现。
教学要求:
通过本章的学习:
了解ArcGIS开发平台的组成部分;
掌握ArcGIS Engine的组件是开发;
熟悉ArcGIS开发平台环境搭建;
学习ArcGIS Engine的各种组件;
把握GIS基本功能的开发,包括空间矢量栅格数据显示、地图浏览、属性信息检索、空间查询等。
本章重点、难点:熟悉Visual Studio开发环境和ArcGIS Engine组件,面向对象的编程思路、ArcGIS Engine组件开发方法。
第三章数据库设计与管理(讲课学时4;实验2学时)
教学内容:
数据库的基本概念;
GIS内部数据结构;
GIS空间数据库;
GIS数据库管理方法;
地理信息数据的采集与管理;
Geodatabase;
数据库程序设计及开发。
教学要求:
使学生从理论上了理解空间数据库的意义,掌握数据库和空间数据库的关系,把握基于ArcSDE的空间数据库的建设与管理以及基于空间数据库的GIS开发基本技能。
本章重点、难点:理解一般数据库和空间数据库的差别与关系,掌握基于Geodatabase的GIS系统开发。
第四章专题图的设计开发(讲课8学时;实验4学时)
教学内容:
专题图的定义及类型;
专题图的颜色;
专题图的符号;
专题图的AO对象模型;
专题图的实现方法;
专题图的综合实现示例。
教学要求:
理解颜色的特征和主要的颜色模型;
了解ArcObjects的颜色对象;
掌握符号对象的应用;
把握渲染器对象的用法;
实现各种专题图。
本章重点、难点:把握符号对象和要素对象之间的关系以及地图符号化,渲染器对象的用法及实现各种专题图。
第五章空间分析(讲课6学时;实验2学时)
教学内容:
空间信息查询;
空间拓扑运算;
空间关系分析;
缓冲区分析;
叠加分析;
网络分析。
教学要求:
掌握QueryFilter和SpatialFilter对象的用法;
掌握Cursor和FeatureCursor对象;
学习TopologicalOperator对象;
把握代码实现缓冲区分析、叠纸分析等基本空间分析功能。
本章重点、难点:掌握空间关系分析的各种方法,理解缓冲区分析的基本概念,熟练掌握缓冲区分析的核心代码,学习编程实现叠置分析功能。
第六章三维分析(讲课4学时;实验2学时)
教学内容:
三维元素模型简介;
三维浏览查询;
MultiPatch的创建方法;
空间插值分析;
外部三维模型的导入;
三维动画的程序实现方法。
教学要求:
掌握GIS三维模型数据的显示,查询。
本章重点、难点:三维浏览查询功能实现,把握创建MultiPatch的方法
综合练习(讲课0学时;实验6学时)
教学内容:
数据准备;
地图浏览功能的实现;
图查属性和属性查图实现;
代码实现缓冲区分析和叠置分析。
教学要求:
学生独立完成综合上机实验,检验GIS系统设计与二次开发技能掌握情况。
本章重点、难点:学生对实现流程的设计与实现。
四、考核方式及成绩评定
本课程的成绩将由平时成绩(考勤、课堂提问及课堂作业)和期末大作业成绩两部分组成,其中平时成绩占40%、课程大作业成绩占60%。
五、教材及参考书目
教材:《基于C#的地理信息系统设计与开发》,荆平编,清华大学出版社,2013年,标准书号:ISBN 9787308098847。
参考书目:
《ArcGIS Engine地理信息系统开发教程》,牟乃夏、王海银等编,测绘出版社,2015年,标准书号:ISBN 9787503035753;
《地理信息系统设计与开发》,陈正江、张兴国等编,科学出版社,2012年,标准书号:ISBN 9787030350008;
《GIS程序设计教程:基于ArcGIS Engine的C#开发实例》,张丰、刘仁义等,浙江大学出版社,2012年,标准书号:ISBN 7308098842。