1、地理信息系统设计与实现徐永进GIS教研室西南大学地理科学学院第一章 概论a.信息b.地理信息c.信息系统d.地理信息系统GIS基本概念第一章 概论地理信息系统的类型第一章 概论领域广泛研究分析深入社会化应用应用全球化网络化集成化模型多样化地理信息系统的应用第一章 概论地理信息系统的应用电信地理信息系统电信地理信息系统铁路地理信息系统铁路地理信息系统属性查询查询专题图作战指挥地图切换警用地理信息系统警用地理信息系统地理信息系统地理信息系统医疗机构查询医疗机构查询地理信息系统地理信息系统三维虚拟三维虚拟地理信息系统地理信息系统电子沙盘电子沙盘地理信息系统地理信息系统WEBGISWEBGIS1、硬件
2、、硬件 包括:客户端、服务器、网络、存储、输入设备、输出设备包括:客户端、服务器、网络、存储、输入设备、输出设备等等2、软件、软件 操作系统、编程语言、图形图象处理、数据库管理、操作系统、编程语言、图形图象处理、数据库管理、GIS基基本功能软件包、本功能软件包、GIS应用软件包、应用软件包、GIS与用户的接口通讯软件等与用户的接口通讯软件等地理信息系统的硬、软件环境主机打印机显示器绘图仪存储设备扫描仪数字化仪解析测图仪测绘仪器GPS网络通用GIS的五大子系统1、数据输入子系统2、数据编辑子系统(图1.3)3、数据管理子系统4、数据查询分析子系统5、数据输出子系统(图1.4)GIS的软、硬件选择
3、1、GIS硬件的选择2、GIS软件的选择 2.1、功能 2.2、技术支持以及后继支持 2.3、市场和用户群 2.4、信息处理能力和数据交换能力 2.5、价格数据质量及其控制GIS空间数据质量的概述1、GIS空间数据质量的含义空间数据质量的含义 数据是各类信息系统的基础。抽象的、适用程度。2、有关、有关GIS空间数据质量的几个概念空间数据质量的几个概念 a、误差 b、数据准确度 c、数据精密度 d、不确定性 e、cd通常合称为精度3、GIS空间数据的质量的重要性空间数据的质量的重要性数据质量及其控制GIS空间数据质量的内容1、微观部分、微观部分 定位精度、属性精度、逻辑一致性、分解力2、宏观部分
4、、宏观部分 a、完整性:层完整性、分类完整性、检验完整性 b、时间(效)性(现实性):数据直接产生时间 c、数据档案3、适用性、适用性数据质量及其控制GIS空间数据质量的控制1、数据误差的来源、数据误差的来源 质量和误差?!质量和误差?!a、数据采集阶段、数据采集阶段 b、数据输入阶段、数据输入阶段 c、数据存储阶段、数据存储阶段 d、数据操作阶段、数据操作阶段 e、数据输出阶段、数据输出阶段 f、成果实用阶段、成果实用阶段数据质量及其控制GIS空间数据质量的控制2、数据质量的控制、数据质量的控制 a、选择数据源、选择数据源 I 确保数据源误差小于系统要求误差确保数据源误差小于系统要求误差 I
5、I 地图数据源对地图的选择地图数据源对地图的选择 III 尽可能的减少中间处理环节尽可能的减少中间处理环节 b、数字化过程中的数据质量控制、数字化过程中的数据质量控制 数据预处理、设备选用、对点精度、数字化限差、精度检查数据预处理、设备选用、对点精度、数字化限差、精度检查 c、数据处理分析中的数据质量控制、数据处理分析中的数据质量控制 计算误差、数据转换误差、拓扑叠加分析误差计算误差、数据转换误差、拓扑叠加分析误差ArcObjects的基本知识AO不同版本稍有出入基本结构图三个主要控件 MapControl、PageLayout、SceneViewer组件库的使用方法ArcObjects的基本
6、知识OMD图的认识ArcObjects的基本知识AO的App组成ArcObjects的基本体系ARCGIS构架AO的在ARCGIS中的地位ARCGIS的其它产品ArcObjects的基本体系AO的数据构架(部分)矢量数据栅格数据图层体系GeoDatabase体系Ao如何获取Feature找到数据所在图层判断图层类型(是否支持Feature的Layer)得到图层的整个FeatureClass判断FeatureClass的esriGeometryType 得到类型 点/线/面/.IFeatureCursor=FeatureClass.GetFeatures 查找枚举每个FeatureAo中Feat
7、ure的处理Feature的成员FieldsIFieldShapeValueAo制作自己的导航工具栏导航工具条实现的几种方式1、esriToolbar2、ICommand3、IEnvelope 放大缩小的原理前视图和后视图的实现Pan的实现原理要注意的接口extendAo制作自己的导航工具栏程序的组织(思考)Mapcontrol控件的鼠标事件的处理地图坐标和IEnvelope接口的关系放大和缩小的实质?!栅格数据的插值处理了解栅格数据栅格数据的插值操作常见插值(样条、反距离权重、克里各)用到的接口IRasterIRatserLayerIRasterDatasetIInterpolationOp
8、 IGeoDataset栅格数据的其它处理获取栅格值IPixelBlock2 IPnt IRawPixels(read)IRaster(read)需要注意的问题?开发GIS基本系统专业开发工具优点与不足优点:技术成熟,起点高优点:技术成熟,起点高 较好的可靠性较好的可靠性 容易理解和掌握容易理解和掌握缺点:扩展性差缺点:扩展性差 体积庞大,软、硬件要求高体积庞大,软、硬件要求高 没有系统版权没有系统版权自行开发GIS的优点和缺点 优点:灵活;更专注解决专业应用问题;优点:灵活;更专注解决专业应用问题;易于扩展成各种系统;拥有版权;易于扩展成各种系统;拥有版权;缺点:难度大,工作量大;开发工作的
9、连续性难以保证;缺点:难度大,工作量大;开发工作的连续性难以保证;对开发人员要求较高;对开发人员要求较高;开发GIS基本系统结论1.大型的GIS开发项目,对平台要求高,适合采用专业开发工具模式。2.小型的GIS,若对平台的要求不高,重点在于专业实际技术的应用,适合采用自主开发模式开发GIS基本系统矢量图形系统遥感和栅格数据处理系统属性数据管理及其数据库系统矢量空间数据元素与属性数据的链接完整的空间数据管理、查询、统计分析和图形图像输出功能开发GIS基本系统需要的操作系统相关知识储备Windows绘图的机制与设备描述表坐标比例的转换运算常见相关函数关于数据库的知识储备数据库的创建和管理SQL语言
10、数据引擎的认识索引、关键字、视图.开发GIS基本系统矢量图形系统构架矢量图形系统的组织关系开发GIS基本系统矢量空间数据元素与属性数据的链接开发GIS基本系统基本图元的设计点(与GIS的点比较?)线面文字弧段.开发GIS基本系统矢量图形过渡到GIS空间数据的分类图层(?优缺点)图层(?优缺点)数据图层的属性数据图层的属性系统对空间数据的管理组织工程工程图幅单元图幅单元图层图层地图对象地图对象开发GIS基本系统空间数据库设计1、基本控制数据基本控制数据【图幅名称、控制点信息、结点、节点、图幅名称、控制点信息、结点、节点、线、面、文字、图层数、其它信息线、面、文字、图层数、其它信息】2、属性数据管
11、理、属性数据管理【属性数据和空间数据的关联属性数据和空间数据的关联】3、数据表、数据表【基本关系表、属性表、图层表、其他表等基本关系表、属性表、图层表、其他表等】控制点文件图 层 文 件属性数据文件1属性数据文件n属性数据文件2项目文件属性数据文件标识点文件线 文 件多边形文件节点文件字注释文件点符号文件结点文件弧文件GeoDatabase简析组成方面:9.1版本:Geodatabase包括两种:Personal Geodatabase 和 ArcSDE Geodatabase,其中前者是将空间数据存储在Access中,后者是将数据存储在Oracle,Informix,DB2,SQL Serv
12、er中。9.2版本:File Geodatabase(新),ArcSDE Geodatabase三种类型:ArcSDE Personal Geodatabase,ArcSDE Workgroup Geodatabase,ArcSDE Enterprise Geodatabase。其中前两种是9.2新推出来的产品,是将空间数据存储在SQL Server Express中,而第三种就是9.1版本的ArcSDE Geodatabase,是将空间数据存储在Oracle,Informix,DB2,SQL Server。GeoDatabase简析数据类型Geodatabase事实上是很多Geographi
13、c Dataset的集合,最基本的Dataset的类型包括Feature Classes、Raster Dataset、Attribute Tables。在以上基本要素的基础上,还能定义Geodatabase的Schema、数据的完整性、规则和行为,包括Spatial Reference、Spatial Resolution、Topology、Network、Domain等等。在创建Geodatabase时,首先生成不同的Dataset类型,然后添加或者扩展Geodatabase基本要素的能力,例如添加拓扑、网络、子类以实现GIS行为建模、维护数据完整性以及建立空间关系。功能方面功能方面:Ve
14、rsioning Editing(版本化编辑)Working With a Geodatase Using SQL(仅支持Informix和DB2)离线编辑(与9.2的Check In/Check Out相同)9.1版本对存储在ArcSDE中的空间数据只提供版本编辑功能,到了9.2才增加了Non Version(非版本化编辑)功能以及Registered as visioned with the option to move edits to base(不完全版本化编辑)功能GeoDatabase简析Spatial Type目前有三种DBMS能够支持Geodatabase的Spatial Ty
15、pe:(1)Oracle using the ESRI spatial type or optionally the Oracle Spatial type;(2)IBM DB2 using the Spatial Extender Geometry Object;(3)Informix using the Spatial DataBlade Geometry Object。GeoDatabase简析矢量要素的存储矢量要素的存储Feature Dataset/Feature Class 参数:Spatial Reference(1)XY Tolerance(2)XY Resolution对于3
16、D数据以及Linear Referencing数据,可以分别对Z值和M值设置Z Tolerance、Z Resolution,以及M Tolerance、M Resolution Feature calss可以扩展为:Feature Dataset、Subtypes、Attribute Domains、Relationship Classes、Topology、Network Dataset、Geometric Network、Terrain、Address Locator、Linear Referencing、Cadastral Fabric、Cartographic Representat
17、ion、Versioning GeoDatabase简析Raster数据的存储数据的存储 Coordinate SystemReference Coordinate or XY LocationCell SizeCount of Rows和ColumnsRaster和Image数据类型也是存储和管理在关系表格中,Raster数据通常比较大,存储的时候需要一个Side Table来存储,将Raster切为小片,或者大小通常为128*128或者256*256的Blocks,存储在Raster表中,通过Side表的每一行记录去记录栅格中的每一个BlockGeoDatabase简析管理管理File和和
18、Personal Geodatabase Compressing File Geodatabase的Compress不是在物理上将数据压缩得更小,而是将数据组织得更加紧凑,例如重复的完全相同的多点会用一行记录加上点的个数来表示。ArcGIS对不同的字段采取不同的压缩方法,压缩比例由要素的类型以及属性数据的冗余程度来决定。Compacting Compacting是将文件记录整理、重新归类,以减少存储空间。如果经常添加或者删除数据,就必须定期对File 或者Personal Geodatabase实现Compact,这能够减少文件大小,提高访问速度。GeoDatabase简析Versioning
19、(版本)(版本)Versioning使 得多个用户能够同时编辑一个Geodatabase,而不用去复制数据库或者锁定数据库。一个Geodatabase能够有很多Version,事实上不 管一个Geodatabase有多少个Version,数据库中只保存一套Tables和Feature Classes。Version是对Geodatabase的快照,而不是复制。对所有版本的编辑都是保存在Delta表中的。通过创建Version,多个用户可以同时对一个Geodatabase进行编辑,而且多个用户也可以同时编辑一个Version。当用户连接一个多用户的Geodatabase时,通常需要选定连接哪个V
20、ersion。对于海量的、多用户的数据库,可以使用自动自动Reconcile和和Post的功能。有两种方式可以实现:Batch Reconcile和Version Reconcile Services GeoDatabase简析Versioning(版本)(版本)在进行数据库处理的时候,有三种选项:(1)Registered As Visioned without the option to move edits to base能够实现的操作包括Undo和Redo操作、长事务编辑、为设计和工程使用命名版本、使用Geodatabase归档、使用数据库复制。不能做的事:创建拓扑、从拓扑中添加或删除
21、要素、添加和删除拓扑规则、创建几何网络、从几何网络中添加或删除要素类。(2)registered as visioned with the option to move edits to base不能够做的事:编辑参与拓扑和几何网络的要素类、数据库归档、数据库复制 (3)not registered as versioned 是最原始的状态,能够实现复杂数据类型,包括拓扑和几何网络的编辑与更新。因为Default版本是数据库中最关键的,需要经常更新,因此需要对Default版本定期备份。GeoDatabase简析Versioning(版本)(版本)编辑冲突:(1)多个用户同时编辑一个版本中的数
22、据:)多个用户同时编辑一个版本中的数据:当 多个用户同时编辑一个Version时,对每个用户都创建一个Edit Session,每个用户都不能看到其他用户的编辑状态,只有用户Save Edits以后,才能够看到其他用户的编辑状态。如果多个用户同时对一个要素做了不同的操作,则会发生Conflicts,在保存编辑结果时,会出现冲突 信息,则根据在Editing Options的Versioning面板上设置的Preferences来处理冲突,看应该保存哪个用户的编辑结果;(2)如果是子版本和父版本的编辑发生冲突)如果是子版本和父版本的编辑发生冲突,则在Reconcile的时候会出现冲突信息,用户可
23、以手动去解决冲突;如果用户正在查看的版本又被提交了新的内容,则用户只有Refresh以后,才能看到更新以后的内容。GeoDatabase简析Geodatabase Archiving(历史数据归档)(历史数据归档)Transactional Version Historical Version(只读只读)在 连接一个数据库的时候,可以选择是连接Historical Version还是Transactional Version,并且还可以通过Change Version工具来进行修改。对于Historical Version的查询是基于Archive Class,而对于Transactional
24、 Version的查询是基于Base表和Delta表。GeoDatabase简析Geodatabase Archiving(历史数据归档)(历史数据归档)注意:(1)一旦数据集注册为“Registered with moving edits to base”,则不能实现Archiving,必须将数据集Unregistered,然后再“Registered as versioned without the option to move edits to base”;(2)仅仅对具备Own权限的Datasets或者Classes进行Archiving;(3)在开始Archiving时,原始Clas
25、s的Indexed也将创建;(4)能够通过点击Archiving的Properties查看数据的档案;(5)对Archive Class类的命名规则是在原始对象类的名称后加“_H”,例如Road_H;(6)利用ArcCatalog不能查看Archive Class,但是在ArcMap中通过Add Historical Archive命令把Archive Class添加到ArcMap中浏览和分析;(7)为了更好的使用Archive Class,应该定期更新Database Statistics;GeoDatabase简析Geodatabase Distribution(复制与同步)(复制与同步)
26、GeoDatabase简析Working With a Geodatabase Using SQL可以通过可以通过Sql创建空间参考创建空间参考可以通过可以通过SQl完成空间操作完成空间操作 以上全部资料来自于自动生成等高线系统设计与实现系统目标 设计一小型实验系统,系统要求能够完成基本的地图浏览操作之外,需要具备基本的文件保存/读取等功能,专业功能模块为由离散点自动生成等高线。基本要求:1、可以读取一种公开数据格式,拥有一种自定义数据格式;2、简单图层控制功能(可视、上下移动);3、数据输出功能,可以打印或者保存为文件;4、能够由具备Z值的点自动生成等高线的功能,对于等高线的平滑功能,做为后
27、继开发设计模块;自动生成等高线系统设计与实现系统内容系统内容系系统统参参数数设设置置数数据据输输入入数数据据打打印印数数据据输输出出等等高高线线自自动动生生成成数数据据编编辑辑选选择择选选做做视视图图浏浏览览自动生成等高线系统设计与实现开发方式的选取教学用,系统规模小,功能少,对于基本GIS系统设计开发已经讲述过,可以采用底层开发方式设计;开发工具选取VC+/VB/Delphi/C?系统环境操作系统:Win2000 Server/Pro、WinXP、Win98 支持软件:无需任何专业GIS平台支持,若为C#则需要NET Frame Work硬 件:CPU不低于566HZ 内存不低于128M自动
28、生成等高线系统设计与实现关键技术基本GIS系统?支持公开格式的文件?(shape file、mif、vct)如何生成等高线?(格网法、三角网法)资料参考矢量图形系统设计陈建春shape file 白皮书ESRI Mif文件格式说明 MapInfo 国家矢量数据交换标准GB 算法几何等、各级别等高线相关的论文 各种途径得来的网络资料自动生成等高线系统设计与实现Shape File的结构自动生成等高线系统设计与实现其它数据格式的定义 MIF、MID DXF自定义格式自动生成等高线系统设计与实现详细功能设计数据输入打开导入数据输出新建保存另存退出文件还有什么?自动生成等高线系统设计与实现详细功能设计缩小平移地图浏览放大居中前/后视图显示全图浏览/视图(?)应如何组织这个菜单?自动生成等高线系统设计与实现详细功能设计最近文档地图属性系统参数设置图层其它(eg缺省样式)设置还有哪些可以改动的?自动生成等高线系统设计与实现详细功能设计编辑选取编辑方式点/线/面编辑其它内容的表现方式?自动生成等高线系统设计与实现详细功能设计等高线单步处理自动处理生成方法需要考虑什么问题?自动生成等高线系统设计与实现详细功能设计系统还有哪些需要完善的内容?讨论?