GIS库基础知识

最近开始接触GIS相库的识,整理下基础知识,以便加深理解。谈到GIS软件,首先让我们想到的便是GIS界的龙头大哥ESRI公司旗下的ArcGIS产品,其发展可谓风生水起。MapInfo软件也不错 ,可是给人的感觉是渐渐被淘汰了似的, 使用该软件的人并不算多。 一套GIS的完整开发框架,包括四个组成部分:标准层、数据库层、平台层和组间层。这四个部分从下到上,从底层到高层,共同构成一个完整的体系。

标准层主要是用于制定各类标准。开放的GIS标准主要有两大体系:OGC( http://www.opengeospatial.org/ )、ISO/TC211( www.isotc211.org/ )。 其中,WKT(Well-Known Text)与WKB(Well-Known Binary)是OGC制定的空间数据的组织规范,顾名思义,WKT是以文本形式描述空间数据,而WKB是以二进制形式描述空间数据。目前大部分支持空间数据存储的数据库构造空间数据都采用这两种方式。
数据库层主要是采用开源地理信息标准采用开源方式开发的空间数据库项目,包括POSTGIS、MySQL空间扩展等。 数据库组件层按照功能可分为两类:数据管理组件和分析组件。

数据管理组件
1、GDAL(http://www.gdal.org/):GDAL是一个基于C++的栅格格式的空间数据格式解释器。作为一个类库,对于那些用它所支持的数据类型的应用程序来说它代表一种抽象的数据模型。GDAL持大多数的栅格数据类型(shp、tab)。
在开发上GDAL支持多种语言的接口如:Perl、Python、VB6、Java、C#。

2、OGR(http://www.gdal.org/ogr/):OGR是C++的简单要素类库提供对各种矢量数据文件格式的读取(某些时候也支持写)功能。OGR是根据OpenGIS的简单要素数据模型和Simple features for COM(SFCOM)构建的。OGC也支持大多数的矢量数据类型支持数类型。

3、GeOxygene( http://www.oxygene-project.sourceforge.net/):GeOxygene基于Java和开源技术同时提供一个实现OGC规范和ISO标准可扩展的对象数据模型(地理要素、几何对象、拓扑和元数据)。它支持Java开发接口。数据存储在关系数据中(RDBMS)保证用户快速和可靠的访问数据,但用户不用担心SQL描述语句,他们通过为应用程序建立UML和Java代码的模型。在对象和关系数据库之间使用开源软件进行映射。到现在可以使用OJB同时支持Oracle和PostGIS中的数据。
4、GML4J ( http://gml4j.sourceforge.net/ ): GML4J 是一个作用于Geography Markup Language(GML)的Java API工具。当前GM4J的作用是一个GML数据的扫描器。通过它可以读取和解释那代表地理要素、几何对象、它们的几何、要素的属性、集合对象的属性、复杂属性、坐标系统和其他的GML结构的XML。现阶段GML4J只支持GML读取和访问,在以后将支持GML数据的修改。
分析组件

1、JTS(http://sourceforge.net/projects/jts-topo-suite/):JTS Topology Suite是一套2维的空间谓词和函数的应用程序接口。它由Java语言写成,提供了全的、延续的和健壮的基本的2维空间算法的实现,并且效率非常高。Net Topology Suite(http;//nts.sourceforge.net/)则是一个.Net的开源项目,该项目的主要目的是将JTS Topology Suite应用程序提供给.Net应用程序使用。

2、GSLIB(http://www.gslib.com/):GSLIB是一个提供了空间统计的程序包,它是当前最强大和综合的一个统计包,并且具有灵活性和开放的接口。其缺点是缺少用户支持,用户界面不友好且缺少面向对象建模能力。

3、PROJ.4(http://trac.osgeo.org/proj/):PROJ.4是一个开源的地图投影库,提供对地理信息数据投影以及动态转换的功能,WMS,WFS或WCS Services也需要它的支持。

4、GeoTools(http://www.geotools.org/):GeoTools是也是遵循OGC规范的GIS工具箱。它拥有一个模块化的体系架构,这保证每个功能部分可以非常容易的加入和删除。 GeoTools目标是支持OGC所有的规范并且各类国际规范和标准。GeoTools.NET(http:// geotoolsnet.sourceforge.net/Index.html)则是与Java对应的.NET版本。

平台层主要是构建在标准层、数据库层、中间件层基础上的可以扩展的系统框架。使用平台层可以简化我们搭建GIS框架的工作量。通过对平台的二次开发扩展可以让我们搭建基于GIS开放框架的GIS应用系统。平台多基于开源的GIS标准,同时兼容开源的空间数据库,与整个开放框架体有很好的兼容性。平台层根据应用的不同这里可以分为两大类:桌面平台、平台。桌面平台主要是指用于桌面应用的平台框架,web平台主要是指应于web应用的平台框架。

桌面平台:Grass GIS、OSSIM、SharpMap、World Wind、MapWindow

Web平台:GeoServer、MapServer、Mapnike、OpenLayers、TileCache

从软件底层的开发语言角度讲,开源空间信息软件可以被独立的分为以下三种技术体系门类,在每种分类体系内部,开发人员往往是基于不同的项目交叉工作的,所以这种分法仅仅是方便了熟悉某种开发语言的程序员,对于用户和应用人员而言, 意义不大。

语言 开源软件
C/C++ GRASS、GDAL、OGR、GSLIB、OSSIM、Proj4、QGIS、MapWindow4、MapServer、Mapnik等
Java GeoTools、GeOxygene 、GML4J、MapTools、GeoServer、JTS等
.Net NetTopologySuite、GeoTools.NET、SharpMap、World Wind、MapWindow6等
脚本 OpenLayers、TileCache等
这段时间做了个shp、tab数据校验的小工具,最初准备使用geotools库,由于没有找到处理tab数据的相关类,只好使用GDAL,官方只提供C++版本下载,想使用Java版接口须要自己编译,编译步骤比较麻烦,而且API文档也是在线版的,我将编辑好的库以及API文档上传至CSDN方便大家使用。
下载地址: http://download.csdn.net/detail/bbirdsky/5838397
API地址: http://download.csdn.net/detail/bbirdsky/5837301
公司组织培训,木遥原创1个月编写的培训教案资料,极为详细,入门必备。 目录如下 一、 GIS的概论、应用 4 1、什么是GIS 4 2、GIS的应用 5 二、 GIS的标准、体系结构及平台软件 13 1、GIS标准: OGC 13 2、GIS的体系结构 13 3、常见GIS平台 14 (1)ArcGIS 14 (2)SuperMap超图 15 (3)开源GIS 16 (4)公司GIS技术架构建议 17 三、GIS坐标系详解 17 1、地球空间模型 18 2、地理坐标系 19 (1)关于地心坐标系和参心坐标系 20 (2)关于度分秒与十进制值 20 3、投影坐标系 20 (1)墨卡托Mercator投影 22 (2)高斯-克吕格 Gauss-Kruger投影 23 4、国际坐标系标准 25 (1)WGS84坐标系 25 (2)Web Mercator投影 25 5、国内坐标系标准 25 (1)1985国家高程基准 25 (2)北京54坐标系(BJZ54) 26 (3)西安80坐标系(GDZ80) 26 (4)2000国家大地坐标系(CGCS2000) 26 (5)Web地图所采用的坐标系 27 6、经纬网与方里网 27 (1)经纬网 27 (2)方里网 27 7、地图比例尺、分辨率 28 四、地图的图层概念 28 1、图层中数据的分类:矢量数据与栅格数据 29 (1)矢量数据 29 (2)栅格数据 29 (3)矢量栅格数据的比较 29 2、切片(瓦片)地图的概念 30 3、WebGIS的地图结构 31 五、地理要素的概念 32 1、要素的数据分类 33 (1)点 33 (2)线 33 (3)面 34 (4)要素之间的拓扑关系 34 2、要素的构成 34 (1)坐标信息 geometry 34 (2)样式信息 style 34 (3)属性信息 attributes 35 六、GIS数据的来源 36 1、底图数据来源 36 (1)官方地图 36 (2)实地外采 37 (3)航片卫片制作 38 (4)地图数据加工制作过程 39 2. POI数据(信息点数据) 39 (1)通过整合GPS的摄像机扫街拍摄 40 (2)手持含GPS的智能设备(如智能手机)进行采集 40 (3)地址反向编译 40 (4)互联网或者企业获取 40 3. 其他数据图层或数据 41 (1)交通拥堵数据 44 (2)三维数据 44 (3)假三维数据(那种不能旋转的45度三维俯视图) 44 (4)街景 44 4、总结 44 七、走进三维GIS 45 1、主要的三维GIS平台及软件 45 (1)Skyline 45 (2)ArcGIS旗下 ArcGlobe和ArcScene 46 (3)GoogleEarth 47 2、三维GIS的瓶颈 47 八、走进互联网地图 48 1、火星坐标系(GCJ-02) 49 2、各互联网地图所用的坐标系 49 3、各类地图服务介绍 49 (1)谷歌google地图 50 (2)微软bing地图 50 (3)天地图 50 (4)高德地图 51 (5)百度地图 51 (6)腾讯地图 51 (7)图吧地图 52 (8)E都市 52 (9)搜狗地图 52 4、行业现状 52 九、GIS的发展 53 1、回顾GIS的发展历程 53 2、GIS的发展 54
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值