概述:

本节讲述如何在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,他它的定义方式为:

[javascript] view plaincopy print?
  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,它的定义方式为:

[javascript] view plaincopy print?
  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,包括投影,中心点等信息,定义方式为:

[javascript] view plaincopy print?
  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());

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

[html] view plaincopy print?
  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>

转载于:https://www.cnblogs.com/telwanggs/p/6972870.html

(转) OpenLayers3基础教程——加载资源相关推荐

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

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

  2. PyQt5教程(八)——实现QQ登录界面(二、加载资源文件)

                                         实现QQ登录界面--加载资源文件 一.创建资源文件: 上篇文章创建了QQ登录界面,本篇介绍创建并加载资源文件. 1.创建资源文 ...

  3. On-Demand Resources Guide中文版(按需加载资源--上)

    本文翻译由唧唧歪歪翻译自Apple文档 On-Demand Resources Guide On-Demand Resources Guide中文版(按需加载资源--下)包含管理按需加载资源.调试以及 ...

  4. TGame游戏新篇:1.5 追求动态的加载资源

    在看Unreal Engine 4.x Scripting with C++ Cookbook(第二版)这本书,把一些必要的基础知识过一过.目前没有学习ygo具体游戏逻辑的实现,先尝试先自己简化一下实 ...

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

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

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

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

  7. Addressable系统的加载资源API总结

    你好,我是跟着大智学Unity的萌新,我叫小新,这是我本周的学习总结报告哦. 大智:"小新,这周学习有没有遇到什么问题呢?" 小新:"确实遇到了,那个Addressabl ...

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

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

  9. On-Demand Resources Guide中文版(按需加载资源--下)

    本文由唧唧歪歪翻译自Apple文档 On-Demand Resources Guide  该文档的上部分包含:按需加载资源基础以及创建和编辑tag两部分 (三)管理按需加载资源 下载和管理按需加载资源 ...

最新文章

  1. 数据科学家成长指南(下)
  2. php文件上传及头像预览
  3. Django介绍工程搭建
  4. shell开发跳板机功能脚本
  5. python中opencv安装_怎么为python安装opencv模块-百度经验
  6. Boost:自定义树的测试程序
  7. ajax fetch api,fetch 简介: 新一代 Ajax API
  8. Ubuntu的一些常用快捷键
  9. CCF-CSP认证考试历年试题集
  10. python中集合类型的四种操作符_Python集合类型和操作,及
  11. 操作系统笔试面试基本内容
  12. 饥荒联机版服务器控制台本地和在线,饥荒联机版控制台怎么打开_饥荒联机版控制台开启方法_牛游戏网...
  13. Phaser3之 load
  14. 项目管理知识体系九大知识领域简介
  15. Multi-UA V Cooperative Exploringfor the Unknown Indoor EnvironmentBased on Dynamic Target Tracking翻译
  16. Semantic Web 语义化web
  17. 最优化方法一:梯度下降法
  18. 基于堆栈二值化自动编码器和二值化神经的无约束人脸表情识别算法(An efficient unconstrained FERa based on BAEs and BNN)
  19. ALtera DE2开发板学习01
  20. CVPR 2022|U2PL:使用不可靠伪标签的半监督语义分割

热门文章

  1. TEMU:动态分析组件
  2. Hive分桶(bucket)
  3. python 屏幕输入 读取两行_一节课带你掌握Python的输入输出
  4. (96)FPGA时序违规案例(一)
  5. (97)FPGA手写RAM(Verilog)
  6. (40)FPGA面试技能提升篇(OAM与SDH协议)
  7. php 走马灯轮播,Vue.js轮播图走马灯代码实例(全)
  8. mysql连接编码设置_MySQL基础 - 编码设置
  9. python容器装水_Python版LeetCode11. 盛最多水的容器
  10. 12025.petalinux 之phy调试ping(三)