概述:

本节讲述如何在Ol3中加载wms图层并显示到地图中。

Ol3下载:

你可以在OL官网去下载,下载地址为http://openlayers.org/download/,也可以去我的百度云盘下载,下载地址为http://pan.baidu.com/s/1o6wwHTo。官网上的最新版本为3.6.0,我的网盘的版本为3.0.0,不过官网上的链接好像是失效的。

OL3必须资源引入:

OL3必须引入的资源有两个,一个为样式文件,ol.css;一个为js文件,ol.js。

OL3加载wms:

在Ol3中,可以通过两种方式加载WMS,一种是ol.layer.Image,其对应的资源为ol.source.ImageWMS,他它的定义方式为:

  1. var untiled = new ol.layer.Image({
  2. source: new ol.source.ImageWMS({
  3. ratio: 1,
  4. url: 'http://localhost:8081/geoserver/lzugis/wms',
  5. params: {'FORMAT': format,
  6. 'VERSION': '1.1.1',
  7. LAYERS: 'lzugis:province',
  8. STYLES: ''
  9. }
  10. })
  11. });

一种是ol.layer.Tile,其对应的资源为ol.source.TileWMS,它的定义方式为:

  1. var tiled = new ol.layer.Tile({
  2. visible: false,
  3. source: new ol.source.TileWMS({
  4. url: 'http://localhost:8080/geoserver/lzugis/wms',
  5. params: {'FORMAT': format,
  6. 'VERSION': '1.1.1',
  7. tiled: true,
  8. LAYERS: 'lzugis:province',
  9. STYLES: ''
  10. }
  11. })
  12. });

显示资源:

OL3中显示资源使用Map实现的,一个Map实例包括target,即地图展示的div的id;layers,地图要现实的图层集合;view,包括投影,中心点等信息,定义方式为:

  1. var map = new ol.Map({
  2. controls: ol.control.defaults({
  3. attribution: false
  4. }),
  5. target: 'map',
  6. layers: [
  7. untiled,
  8. tiled
  9. ],
  10. view: new ol.View({
  11. projection: projection,
  12. rotation: Math.PI / 6
  13. })
  14. });
  15. map.getView().fitExtent(bounds, map.getSize());

将上面的内容连起来,完整的代码如下:

    1. <html xmlns="http://www.w3.org/1999/xhtml">
    2. <head>
    3. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    4. <title>Ol3 wms</title>
    5. <link rel="stylesheet" type="text/css" href="http://localhost/ol3/css/ol.css"/>
    6. <style type="text/css">
    7. body, #map {
    8. border: 0px;
    9. margin: 0px;
    10. padding: 0px;
    11. width: 100%;
    12. height: 100%;
    13. font-size: 13px;
    14. }
    15. </style>
    16. <script type="text/javascript" src="http://localhost/ol3/build/ol.js"></script>
    17. <script type="text/javascript" src="http://localhost/jquery/jquery-1.8.3.js"></script>
    18. <script type="text/javascript">
    19. function init(){
    20. var format = 'image/png';
    21. var bounds = [73.4510046356223, 18.1632471876417,
    22. 134.976797646506, 53.5319431522236];
    23. var untiled = new ol.layer.Image({
    24. source: new ol.source.ImageWMS({
    25. ratio: 1,
    26. url: 'http://localhost:8081/geoserver/lzugis/wms',
    27. params: {'FORMAT': format,
    28. 'VERSION': '1.1.1',
    29. LAYERS: 'lzugis:province',
    30. STYLES: ''
    31. }
    32. })
    33. });
    34. var tiled = new ol.layer.Tile({
    35. visible: false,
    36. source: new ol.source.TileWMS({
    37. url: 'http://localhost:8080/geoserver/lzugis/wms',
    38. params: {'FORMAT': format,
    39. 'VERSION': '1.1.1',
    40. tiled: true,
    41. LAYERS: 'lzugis:province',
    42. STYLES: ''
    43. }
    44. })
    45. });
    46. var projection = new ol.proj.Projection({
    47. code: 'EPSG:4326',
    48. units: 'degrees'
    49. });
    50. var map = new ol.Map({
    51. controls: ol.control.defaults({
    52. attribution: false
    53. }),
    54. target: 'map',
    55. layers: [
    56. untiled,
    57. tiled
    58. ],
    59. view: new ol.View({
    60. projection: projection,
    61. rotation: Math.PI / 6
    62. })
    63. });
    64. map.getView().fitExtent(bounds, map.getSize());
    65. }
    66. </script>
    67. </head>
    68. <body onLoad="init()">
    69. <div id="map">
    70. <div id="location"></div>
    71. </div>
    72. </body>
    73. </html>

(转) OpenLayers3基础教程——加载资源的更多相关文章

  1. 背水一战 Windows 10 (63) - 控件(WebView): 基础知识, 加载 html, http, https, ms-appx-web:///, embedded resource, ms-appdata:///, ms-local-stream://

    [源码下载] 背水一战 Windows 10 (63) - 控件(WebView): 基础知识, 加载 html, http, https, ms-appx-web:///, embedded res ...

  2. cocos2d-x addImageAsync()异步加载资源成功之后的场景跳转问题

    http://blog.csdn.net/w20175357/article/details/23546985 1.先说说addImageAsync()异步加载图片的问题 做游戏的时候现在资源的比较大 ...

  3. OpenLayers3基础教程——OL3基本概念

    从本节開始,我会陆陆续续的更新有关OL3的相关文章--OpenLayers3基础教程,欢迎大家关注我的博客,同一时候也希望我的博客可以给大家带来一点帮助. 概述: OpenLayers 3对OpenL ...

  4. (转)OpenLayers3基础教程——OL3基本概念

    http://blog.csdn.net/gisshixisheng/article/details/46756275 OpenLayers3基础教程——OL3基本概念 从本节开始,我会陆陆续续的更新 ...

  5. OpenLayers3基础教程——OL3 介绍control

    概述: 本文讲述的是Ol3中的control的介绍和应用. OL2和OL3 control比較: 相比較Ol2的control,OL3显得特别少,下图分别为Ol2和Ol3的control: Ol2的c ...

  6. OpenLayers3基础教程——OL3之Popup

    概述: 本节重点讲述OpenLayers3中Popup的调用时实现,OL3改用Overlay取代OL2的Popup功能. 接口简单介绍: overlay跟ol.control.Control一样,是一 ...

  7. Java加载资源文件几种方法

    from: http://andyzhu.blog.51cto.com/4386758/775836/ import java.net.URL; import org.springframework. ...

  8. Maven,预加载资源文件

    预加载资源文件需要先启用功能: <build> <resources> <resource> <directory>src/main/resources ...

  9. 【Unity3D】Unity3D之 Resources.Load 动态加载资源

    [Unity3D]Unity3D之 Resources.Load 动态加载资源 1.Resources.Load:使用这种方式加载资源,首先需要下Asset目录下创建一个名为Resources的文件夹 ...

随机推荐

  1. App后台开发运维和架构实践学习总结(2)——RESTful API设计技巧

    前言 移动互联网时代,RESTful API成为越来越重要的移动端和服务器端交互的形式.尤其是在很多互联网公司或者传统行业拥抱移动互联网的时候,一套设计良好的Restful API能够帮助互联网产品支 ...

  2. JavaSE 学习笔记之package包(十一)

    包:定义包用package关键字. 1:对类文件进行分类管理. 2:给类文件提供多层名称空间. 如果生成的包不在当前目录下,需要最好执行classpath,将包所在父目录定义到classpath变量中 ...

  3. UVa - 12664 - Interesting Calculator

    先上题目: 12664 Interesting CalculatorThere is an interesting calculator. It has 3 rows of button.• Row ...

  4. ZooKeeper配置文件常用配置项一览表(转)

     配置参数详解(主要是$ZOOKEEPER_HOME/conf/zoo.cfg文件) 参数名 说明 clientPort 客户端连接server的端口,即对外服务端口,一般设置为2181吧. data ...

  5. Oracle Internals 相关站点

    http://oracle-internals.com/blog/links/ http://coll15.mapyourshow.com/6_0/sessions/session-details.c ...

  6. NGINX Web Server Nginx web server

    原文地址:http://nginx.com/resources/admin-guide/web-server/ NGINX Web Server Nginx web server This secti ...

  7. java代理使用 apache ant实现文件压缩/解压缩

    [背景] 近日在研究web邮件下载功能,下载的邮件能够导入foxmail邮件client.可是批量下载邮件还需将邮件打成一个压缩包. 从网上搜索通过java实现文件压缩.解压缩有非常多现成的样例. [ ...

  8. Candy [leetcode] O(n)时间复杂度,O(1)空间复杂度的方法

    对于ratings[i+1],和ratings[i]的关系有下面几种: 1. 相等.相等时ratings[i+1]相应的糖果数为1 2.ratings[i + 1] > ratings[i].在 ...

  9. C语言之基本算法40—字符串删除元音字母倒序输出

    //字符串,数组 /* ================================================================== 题目: 输入一行字符,将辅音字母按反序输出 ...

  10. oc32--构造方法1

    // // Person.h #import <Foundation/Foundation.h> @interface Person : NSObject @property int ag ...