资讯专栏INFORMATION COLUMN

Openlayers官网实例线下实现的解决方法

or0fun / 3254人阅读

摘要:官网提供了很多实例供参考学习,但是最新官网实例是基于版本以及语言开发,而行业内大部都用的版本较多,这与市场存在一个新老版本开发的衔接问题。

Openlayers官网提供了很多实例供GISer参考学习,但是最新官网实例是基于Openlayers5.3版本以及ECMAScript6语言开发,而行业内大部都用的openlayers3-4版本较多,这与市场存在一个新老版本开发的衔接问题。GIS开发初学者往往无从下手,因此,这里以snap interaction为例分享线下实现的过程,步骤如下:

1.css、js文件引用修改

官网实例引用文件主要基于官网的库文件,而且版本不一样,类似如下:



将上述代码修改为本地或自身版本(3.11.1)文件,如下:


2.import语句删除
删掉官网实例中的import语句,但是要注意组件分布位置。删掉如下语句:

  import Map from "ol/Map.js";
  import View from "ol/View.js";
  import {Draw, Modify, Select, Snap} from "ol/interaction.js";
  import {Tile as TileLayer, Vector as VectorLayer} from "ol/layer.js";
  import {OSM, Vector as VectorSource} from "ol/source.js";
  import {Circle as CircleStyle, Fill, Stroke, Style} from "ol/style.js

3.修改组件位置
修改组件如TileLayer、OSM等,改为ol.layer.Tile、ol.source.OSM等(注意,实例中不仅仅只有这两句组件代码,要全面检查或通过浏览器监测)。
原代码:

  var raster = new TileLayer({
    source: new OSM()
  });

修改后:

  var raster = new ol.layer.Tile({
    source: new ol.source.OSM()
  });

最后,将我修改的全部代码分享如下(亲测可用):



转载请注明出处——哦哟哟哟哟哟哟哟哟哟

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/102505.html

相关文章

  • Openlayers中数字比例尺实现方法

    摘要:比例尺分类数字式,用数字的比例式或分数式表示比例尺的大小。中比例尺介绍中默认地图比例尺为直线式,如图该比例尺存在精确测量无法读取比例尺实际值的缺点。因此有必要将直线比例尺转换成数字比例尺。 1.比例尺分类(1)数字式,用数字的比例式或分数式表示比例尺的大小。例如地图上1厘米代表实地距离500千米,可写成:1∶50 000 000或写成:五千万分之一。(2)线段式(也叫直线式),在地图上...

    dreamGong 评论0 收藏0
  • JavaScript矢量化地图库 – 快速入门

    摘要:注意在代码中将其替换为自己刚刚申请的运行,显示地图修改保存之后点击运行就可以得到一幅矢量地图了,此过程可能会稍微有点长,要耐心多等一会儿。 VectorMap.js是一个开源地图渲染JavaScript库, 可以使用WebGL或者HTML5两种方式进行交互式矢量地图 (包括矢量瓦片地图,一般性矢量数据地图)和 栅格瓦片地图的渲染。 WebGL渲染意味着高性能,大数据, HTML5渲染意...

    MiracleWong 评论0 收藏0
  • openlayers-自定义瓦片

    摘要:自定义瓦片定义一个瓦片地址官方文档由此我们只需要重写这个方法即可数据准备用爬虫下载了一些高德地图放大层数最小的图片大小的简单服务器配置,将这些图片放到下使之能够正常访问代码编写常用参数配置用于调试的网格编号很重要使用说明可以用来检查是否是 openlayers-自定义瓦片 定义一个瓦片地址 ol.source.TileImage.tileUrlFunction 官方文档 showI...

    Barrior 评论0 收藏0

发表评论

0条评论

or0fun

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<