Webgis资料

1.webgis

webgis分为服务器,中间件,客户端.因Internet而兴起的分布式地理信息系统.不仅仅是浏览器,还包括桌面客户端.

2.openlayers

OpenLayers是一个用于开发WebGIS客户端的JavaScript包。OpenLayers 支持的地图来源包括Google Maps、Yahoo、 Map、微软Virtual Earth 等,用户还可以用简单的图片地图作为背景图,与其他的图层在OpenLayers 中进行叠加,在这一方面OpenLayers提供了非常多的选择。除此之外,OpenLayers实现访问地理空间数据的方法都符合行业标准。OpenLayers 支持Open GIS 协会制定的WMS(Web Mapping Service)和WFS(Web Feature Service)等网络服务规范,可以通过远程服务的方式,将以OGC 服务形式发布的地图数据加载到基于浏览器的OpenLayers 客户端中进行显示。OpenLayers采用面向对象方式开发,并使用来自Prototype.js和Rico中的一些组件。

OpenLayers在2.13版本中引入了Web Processing Services(WPS)标准,可以对空间数据进行地理分析,例如缓冲区分析。

openlayers中文官方站于2012年8月成立,是由一群openlayers爱好者共同维护的,内容包括openlayers中文API和中文帮助文档,OpenLayers源码分析 、 OpenLayers扩展开发 、OpenLayers相关工具 、OpenLayers 3D、 Openlayers Mobile

使用:

包含相应的js库和CSS样式就可以

<script src="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.3.0/build/ol.js"></script>
<link rel="stylesheet" href="https://cdn.rawgit.com/openlayers/openlayers.github.io/master/en/v5.3.0/css/ol.css">

添加矢量图层

(1)打开map.html文件,将初始化WMS的示例复制其中,保存修改后在浏览器中确定地图正常显示:http://localhost:8000/ol_workshop/map.html。

(2)在地图初始化代码中,找到瓦片图层的加载,在其后添加一下新的图层,以下代码实现请求一组存放在GeoJSON中的要素:

new ol.layer.Vector({
title: 'Earthquakes',
source: new ol.source.GeoJSON({
url: 'data/layers/7day-M2.5.json'
}),
style: new ol.style.Style({
image: new ol.style.Circle({
radius: 3,
fill: new ol.style.Fill({color: 'white'})
})
})
}) 以上示例显示 了世界地图,附以白色的圆圈代表地震带。

注:GeoJSON数据坐标系与地图视图的相同,均为EPSG:4326,因此无需再次设置投影,只有在资源与视图的投影不同的情况下,才需要在资源中明确指定projection 属性来表示要素缓存的投影,这以为着地图视图的投影通常可以被指定。

坐标系

  • EPSG:3857 google,web墨卡托
  • EPSG:4326 WGS-84:是国际标准,GPS坐标(Google Earth使用、或者GPS模块)
  • EPSG:2437 GCJ-02:中国坐标偏移标准,Google Map、高德、腾讯使用
  • BD-09:百度坐标偏移标准,Baidu Map使用

参考:

  1. my coding.net
  2. 开源WEBgis简介
  3. https://wenku.baidu.com/view/5b3a7818102de2bd97058806.html
  4. https://wenku.baidu.com/view/6a3e3a0b79563c1ec5da7182.html?sxts=1560260040884
  5. openlayers入门