• 1. 开源GIS(WEBGIS)杨崇俊 中科院遥感所
  • 2. 主要内容什么是开源GIS?(What) 为什么需要开源GIS?(Why) 开源WEBGIS项目用在哪些领域?(Which) 如何使用开源GIS项目?(How)
  • 3. 什么是开源GIS 顾名思义,开源GIS就是开放源代码的GIS软件。 开源:软件开发者以某种协议发布某些软件的源代码,并允许他人在遵守该协议的基础之上可以自由下载、修改、使用和散布其源代码。 开源协议:GNU GPL、BSD、LGPL、MIT、MS-PL 开源网站:open source GIS、sourceforge、google code、apache、codeplex
  • 4. 开源GIS的发展随着商业GIS的发展而发展壮大 功能性强、技术强劲,背后是来自技术狂热者、科研院所和非盈利机构的大力支持 开放、集成、标准和互操作 跨各类操作平台:linux、windows、mac、mobile 跨各类语言:C、C++、Java、C#、Python、Ruby、Perl、JavaScript、ActionScript 各种层次的产品:桌面、服务器、数据库、客户端、中间件、工具集
  • 5. 为什么需要开源GIS商业软件高昂的使用和维护费用 商业软件频繁的升级换代和兼容性 数据格式无法完全的共享和转换 商业软件的跨平台支持不够完善 开源软件是完全免费使用的 开源软件的发展足以满足常用的需求 开源软件提供做种解决方案
  • 6. 桌面:GRASS、QGIS、UDig 服务器:GeoServer、MapServer(free) 数据库:PostGIS、MySQL Spatial、MS-SQL Spatial 客户端:QGIS、OpenLayers、WorldKit 工具集:JTS(NTS)、GEOS、Shapely、GDAL/OGR 中间件:GeoTools、MapTools 其他:WorldWind、TileCache、Proj4开源GIS项目有哪些
  • 7. 开源GIS项目有哪些
  • 8. 资源管理 (Resource Management) 资源配置 (Resource Configuration) 土地信息系统和地籍管理 (Land Information System and Cadastral Applicaiton) 生态、环境管理与模拟 (Environmental Management and Modeling) 应急响应 (Emergency Response) 地学研究与应用 (Application in GeoScience) 商业与市场 (Business and Marketing) 基础设施管理 (Facilities Management) 选址分析 (Site Selecting Analysis) 网络分析 (Network System Analysis) 可视化应用 (Visualization Application) 分布式地理信息应用 (Distributed Geographic Information Application) 开源GIS的应用领域
  • 9. 功能是否满足需求? 性能是否满足需求? 用户和企业是否同意? 学习成本(参考资料、用户关注)? 二次开发的能力?是否使用开源GIS
  • 10. 数据库:PostGIS 服务器:GeoServer 客户端(B/S):OpenLayers开源GIS项目简介
  • 11. PostGIS是加拿大Refractions公司支持的开源项目,它为开源数据库PostgreSQL提供了空间支持。PostGIS安装后,Postgre SQL中出现一个模版数据库,新建空间数据库时只需以PostGIS为模版即可。PostGIS在SQL级别上实现了基本的空间运算功能。另外绝大多数开源GIS软件(即使是不严格遵守OpenGIS标准的)都支持PostGIS数据表的直接载入,读写等功能。毋庸置疑,PostGIS 是OpenGIS数据源最佳实现。PostGIS简介
  • 12. PostGIS简介
  • 13. PostGIS安装和使用首先下载(http://www.postgresql.org/)并安装PostgreSQL8.x版本,目前最新的为8.4。 安装完毕后设置默认的用户名和密码,添加此用户。 然后打开Application Stack Builder选择需要安装的插件,里面选中PostGIS1.5 for PostgreSQL 8.x,选择合适的版本。下载后自动安装。 安装后可以看到一个模板数据库和一个默认的空间数据库,之后可以根据模板数据库添加一个空间数据库来使用,里面实现的大量的空间分析和空间应用的函数。同时包含一个shapefile dbf input loader工具。 再登录到PostgreSQL中可以进行空间数据的增删改查。 演 示
  • 14. GeoServer 是 OpenGIS Web 服务器规范的 J2EE 实现,利用 GeoServer 可以方便的发布地图数据,允许用户对特征数据进行更新、删除、插入操作,通过 GeoServer 可以比较容易的在用户之间迅速共享空间地理信息。GeoServer 主要特性包括:兼容 WMS 和 WFS 特性;支持 PostGIS 、 Shapefile 、 ArcSDE 、 Oracle 、 VPF 、 MySQL 、 MapInfo ;支持上百种投影;能够将网络地图输出为 jpeg 、 gif 、 png 、 SVG 、 KML 等格式;能够运行在任何基于 J2EE/Servlet 容器之上;嵌入 OpenLayers 支持 AJAX 的地图客端;除此之外还包括许多其他的特性。GeoServer简介
  • 15. GeoServer安装和使用首先下载(http://geoserver.org/)并安装GeoServer,分为两个版本。自带轻量级Java Servlet容器的运行版和war包版本。 安装JDK1.4以上,解压geoserver运行版,确保环境变量里面正确设定了JAVA_HOME变量,双击bin/startup.bat看到ip和端口的提示后表示启动正常。 浏览器中输入http://localhost:port/geoserver/进入系统,默认的管理员和密码是admin,geoserver配置文件在data_dir/security/users.properties文件中。 可以查看服务器的状态,JAI的状态,WMS、WCS、WFS的支持情况和当前的Workspaces、Stores、Layers、LayerGroups和Styles的情况。可以在LayerViews里面查看已经发布的图层。 演 示
  • 16. OpenLayers是一个用于开发WebGIS客户端的JavaScript包。OpenLayers符合行业标准,比如 OpenGIS的WMS和WFS规范。 OpenLayers采用面向对象方式开发,并使用来自Prototype.js和Rico中的一些组件。OpenLayers 支持的地图来源包括Google Maps、Yahoo! Map、微软Virtual Earth 等。用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加。OpenLayers 支持Open GIS 协会制定的WMS和WFS等网络服务规范,可以通过远程服务的方式,将以OGC 服务形式发布的地图数据加载到基于浏览器的OpenLayers 客户端中进行显示。 OpenLayers 可以在浏览器中实现地图浏览的基本效果,比如放大、缩小、平移等常用操作之外,还可以进行选取面、选取线、要素选择、图层叠加等不同的操作。可以对已有的OpenLayers 操作和数据支持类型进行扩充,为其赋予更多的功能。可以为OpenLayers 添加网络处理服务WPS 的操作接口,从而利用已有的空间分析处理服务来对加载的地理空间数据进行计算。OpenLayers简介
  • 17. 首先下载(http://openlayers.org/)压缩包,通过Web服务器发布。 Builder文件夹用来打包压缩所有的js文件,doc文件夹存放API文档,examples文件夹存放所有的例子(重要的学习途径),lib是源文件库,test文件夹是一个测试例子,tools存放用来打包的工具(python)。 在浏览器输入发布地址+/examples/xx.html进入需要了解的例子查看即可。 演 示OpenLayers安装和使用