本文讲述如何使用国际开源项目构建一个完整的GIS(地理信息)应用系统。
通常的GIS应用系统包括:GIS内核、空间数据导入/转换、空间数据引擎、应用服务器、桌面应用程序、Web应用程序、(移动设备应用程序),实际应用中可以根据需要进行取舍。
1、GIS内核 Geotools Geotools是一套基于Java平台的开源GIS API中间件,实现了完整的GIS底层功能。
2、空间数据导入/转换地理数据的获取 地理数据来自文件、数据库和WMS/WFS服务器。
文件方式:支持读取的地理数据文件:ESRI Shape、Mapinfo Tab/Mif、Geomedia Access等,建议使用Shape文件格式,Oracle和PostgreSQL提供Shape文件导入数据库的程序。
WMS/WFS服务器:Internet上有很多开放的GIS应用服务器,例如NASA、InterGraph、TerraServer等,通过它们获取各种免费地图资源。
Google Map资源:Google Map没有采用标准的WMS/WFS协议,可以通过调用开放的Google Map API,附加自定义的WMS/WFS图层,实现应用目的。例如:通过Google Map可以免费获取高分辨的Google Map卫星地图。
3、空间数据引擎
开源:PostgreSQL(PostGIS)、MySQL(4.1以上)
商业:Oracle、DB2、ArcSDE
开源商业空间数据库推荐使用PostgreSQL。
使用商业空间数据库引擎,例如Oracle Spatial、ArcSDE,可以非常方便的处理地理数据,更好的处理海量数据,以及与现有商业软件共享数据。
4、应用服务器 Geoserver Geoserver是一个基于J2EE的开放的GIS应用服务器,实现了OGC(Open Geospatial Consortium)制定的WMS和WFS(WFS-T)规范,Geoserver是整个GIS应用系统的中枢部分,承担大部分业务处理任务。(新版本(1.3.3)增加了对Google Earth KML/KMZ的支持。)
需要注意的是,Geoserver不只是WebGIS服务器,它可以为桌面应用程序(Udig、Mapinfo)或移动设备(支持J2ME的PDA、手机)提供地图支持。
5、桌面应用程序(C/S) Udig、GVSig
Udig是一个使用Eclipse RCP和GeoTools构建的桌面地理信息系统,采用Eclipse SWT图形组件,具有更快的运行速度。Udig可以直接读取Shape文件,访问DB2或Oracle空间数据库,访问OGC WMS/WFS服务器。 Udig提供浏览、查询、编辑、测量等基本的GIS操作功能。
6、Web应用程序(B/S) Mapbuilder Mapbuilder是一个采用AJAX(Asynchronous JavaScript and XML)技术开发的WebGIS客户端,它的内部结构基于MVC(Model-View-Controller),具有良好的可读性和可扩展性,兼容Firefox 1.0+, Internet Explorer 6.0+, Mozilla 1.3+, Navigator 6+等浏览器。
7、移动客户端 Spot Spot是一款基于移动设备的地图和定位软件,地图通过OGC WMS获取,并且提供了蓝牙GPS接口。该软件属于共享软件,使用GPS接口需要付费
分享到:
相关推荐
本文将深入探讨如何利用国际开源项目来构建这样一个系统。 1. **GIS内核**: GIS内核是系统的基础,它提供了处理和操作地理数据的基本功能。例如,Geotools是一个Java平台上的开源GIS API中间件,能够实现GIS的...
综上所述,这个开源GIS项目提供了基于Java的WebGIS开发框架,结合Tomcat服务器,允许开发者构建和部署地理信息应用。同时,通过遵循开源许可协议,它鼓励社区参与和协作,促进技术的共享与进步。GeoServer可能是项目...
开发者可以通过这个平台创建新的应用程序,uDIG是Web地理信息系统的一个核心组件。 2. GeoAPI GeoAPI为OGC/ISO标准提供了一组java接口,供开发者使用。这组接口提供了对地理信息的标准化访问和操作。 3. Geotools...
本文将深入探讨基于C#语言开发的GIS系统,通过分析提供的“Csharp开发的很好的地理信息系统完整源代码”,我们将揭示其背后的关键技术和应用。 一、C#语言在GIS开发中的优势 C#是一种现代化的、面向对象的编程语言...
标签“GIS 开源 代码”进一步确认了这个资源的特性,即它是与GIS相关的开源代码,这可能是一个库、框架或者一个完整的GIS软件开发环境。 在压缩包子文件的文件名称列表中,“MapWindow4Dev”表明这是一个与...
开源地理信息系统SharpMap是一款基于C#语言开发的地理信息系统(GIS),它为.NET开发者提供了一个高效且易用的GIS框架。这款系统的核心在于其强大的地图渲染能力,支持多种地图格式和投影方式,使得开发者能够在Web...
【标题】"基于C#+AE构建GIS桌面端应用系统框架" 涉及的主要知识点包括C#编程语言、Adobe After Effects(AE)软件以及地理信息系统(GIS)的应用。这一项目旨在利用C#作为主要开发语言,结合AE进行图形界面设计,...
QGIS,全称Quantum GIS,是一个开源的跨平台地理信息系统软件,它支持多种数据库,并能与其他GIS软件兼容,因此备受地理数据处理人员的青睐。 QGIS 1.7.1的介绍文档着重于为开发者提供一个详细的应用开发指南,涵盖...
《地理信息系统技术应用》教学课件PPT涵盖了GIS(地理信息系统)的多个核心主题,旨在为学生和教育工作者提供全面的GIS理论与实践知识。这个压缩包包含了从基础到高级的七个教学项目,每个项目专注于GIS的一个特定...
SharpMap是一个基于.NET Framework的开源地理信息系统(GIS)库,主要用于开发WebGIS和桌面GIS应用程序。这个项目为开发者提供了一套完整的工具,用于显示、操作和分析地理数据。其核心特性包括地图渲染、投影转换、...
标题中的"C# Csharp开发的很好的地理信息系统完整源代码"表明这是一个使用C#编程语言编写的地理信息系统(GIS)项目,具有完整的源代码。C#是Microsoft开发的一种面向对象的编程语言,常用于构建Windows应用程序、...
GeoServer是一款开源的GIS(地理信息系统)服务器,它基于Java技术构建,并遵循GNU General Public License。作为GIS领域的重要工具,GeoServer提供了丰富的功能,用于发布、管理和共享地理空间数据。这款服务器是...
1. GIS的基本概念:GIS不仅是一个软件工具,更是一种处理地理信息的方法论。它通过集成各种数据源,如卫星图像、地形图、人口统计数据等,将地理位置与相关属性信息相结合,提供丰富的地图可视化和空间分析功能。 2...
MapWinGis是一个基于Windows平台的开源地理信息系统(GIS)开发框架,主要使用C++语言编写,同时提供了COM接口和.NET绑定,使得开发者可以使用VC++、VB、C#等多种编程语言进行GIS应用的开发。这个资源包含了...
《基于.NET 2.0的GIS开源项目SharpMap分析手记》是一系列深入探讨GIS(地理信息系统)在.NET 2.0平台上的应用的文章集合。本文将围绕SharpMap这一开源GIS框架,结合提供的文件列表,深入解析其核心概念、功能扩展、...
它支持Java开发扩展,可以作为一个良好的起点来构建定制化的GIS桌面应用程序。 - **GeoServer**:是一款强大的开源WebGIS地图服务器,提供标准的OGC接口服务,包括WMS、WFS、WMTS等,易于集成和使用。 - **OpenLayer...
开源GIS(Geographic Information System)是指使用开放源代码软件来处理、分析和展示地理信息的系统。这种系统允许用户自由地访问、修改和分发软件的源代码,从而提供了更灵活、可定制化的地理信息解决方案。空间...
【GIS国赛】全称为“全国大学生GIS应用技能大赛”,是一项旨在推动地理信息系统(Geographic Information System,简称GIS)技术在高校教育中的普及与深化,提高大学生的GIS应用能力及创新能力的重要竞赛活动。...