GNU大众公有版权(General Public License,GPL)是美国开源软件基金会用来保护所创作软件的一份版权声明文件,它是GNU的开源软件许可证的一种,大多数的GNU程序和超过半数的开源软件使用它。它的用意是赋予软件使用者自由,而不再限制使用者的自由。美国麻省理工学院人工智能实验室的程序设计师Richard M.Stallman解释:符合GPL的自由软件,或者说是开放源码(Open Source)软件,指的是软件发行时附上原始程序,并授权允许使用者更改。在网络GIS应用领域,也有许多开源软件可供使用与开发。以下分别从客户端、GIS服务器端以及数据库等几个方面来探讨GIS开源软件的原理及功能,并对服务器端与空间数据库中开源软件的性能进行比较,选择出最优的方案来提供性能良好的网络GIS服务。
客户端对于网络GIS的应用,客户端可以分为桌面与网络两种。Udig(User-friendly Deskto PInternet GIS):是一个类似于ESRI的ArcView的桌面客户端开源软件。Udig是由Java语言撰写,基于EclipseRCP和Geotools开发,支持OGC(Open GIS Consortium)发布的WMS(Web Ma PSer-vices)、WFS(Web Feature Service)标准。它既是一个应用程序,也可以作为开发新的桌面网络GIS应用程序的平台。Udig支持多种数据源:DB2文件、PostGIS数据。Ge-oServer中的WFS、WMS服务可以直接作为数据源在Udig中对地图进行可视化渲染,方便地编辑SLD样式文件。应用Udig的功能主要在这一方面。OpenLayers:是B/S系统网络GIS应用中较有代表性的客户端开源软件,它是一个JavaScript框架,支持OGC制定的WMS、WFS、GML(Geography Markup Language)以及GeoRss与SVG(Scalable Vector Graphics)规范,最新版本已初步支持WFS-T(WFS Transactions)规范,它与支持WFS-T的服务器合作就可以完成矢量地理信息数据的编辑。它的基本功能是能够在浏览器上使用地图切片载入功能实现地图浏览,拖动与缩放等功能也比较完善,还可以实现跨浏览器操作。
OpenLayers2开始增加了浏览器中的矢量数据的渲染功能,通过SVG在Mozilla/Opera浏览器中实现,而在IE中使用了VML(Vector Markup Language)技术。Openlayers支持Well-Known-Text格式,PostGIS、MySQL、Oracle Spatial、DB2 Spatial Blade的数据都可直接读写,同时它也支持商业的网络地图服务如Google Maps,Mi-crosoft Virtual Earth,KML(Keyhole Markup Language)等。新版的GeoServer已经将OpenLayers集成,作为地图浏览的默认客户端。GIS服务器端在GIS服务器端,较常用的有Deegree、MapServer、GeoServer三种开源软件。DeegreeDeegree是以Java为架构供作空间处理的解决方案,Deegree组件可以建立区域端地理信息系统或是建立网络空间信息系统,中心概念是要实现跨平台的操作。目前Dee-gree已符合OGC WMS 1.0.0、WFS 1.1.0、WCS 1.1.0(WebCoverage Service)、OGC Stateless Catalog Service、OGC WCTS(Web coordinate system transfoemation)、OGC GridcoverageSpecification及GML等规格。
所有空间操作中其几何模型(geometry model)都符合ISO19107。在数据读取方面,可以读取ESRI的Shpae file及OGC WKBs(well known bina-ries)、Oracle Spatial、ODBC(Open Database Connectivity)或是JDBC(Java Database Connectivity)的资料库,如PostGIS、MySQL Spatial。Deegree安装的操作系统为GNU/Linux等Unix系统及Windows。MapServerMapServer内核使用C++编写,是以CGI为基础的应用程序,页面调用支持PHP、JSP等多种语言。
小编提示,此条信息值得各位公考朋友参考,所以希望朋友们多了解关注,在职考的千军万马中杀出自己的康庄大道!