vue项目中openlayers绘制行政区划


Posted in Vue.js onDecember 24, 2020

vue项目中openlayers画行政区划(区域范围),供大家参考,具体内容如下

原理

在地图上画需要的范围,实际上就是在地图上打上一圈点,然后依次将这些点用线连接,就形成了范围

引用相应的ol模块

import VectorLayer from 'ol/layer/Vector'
import VectorSource from 'ol/source/Vector'
import { Map, View, Feature } from 'ol'
import { Style, Icon, Stroke } from 'ol/style'
import { Point, LineString, Polygon } from 'ol/geom'

获取范围点

这里我将点放在json文件中,然后通过axios读取
json文件截图:

vue项目中openlayers绘制行政区划

axios.get('static/常德市.json').then((res) => {
 let arr = res.data.coordinates
 let polygonFeature = new Feature({
   type: 'polygon',
   geometry: new Polygon(arr[0])
  })
  polygonFeature.setStyle(new Style({
   stroke: new Stroke({
   width: 2,

   color: [255, 255, 0, 0.8]
   }),
   fill: new Fill({
   color: [248, 172, 166, 0.2]
   })
   // text: new Text({
   // text: '这是区域'
   // })
  }))
  let polygonLayer = new VectorLayer({
   source: new VectorSource({
   features: [polygonFeature]
   })
  })
  this.gmap.addLayer(polygonLayer)
  })
  axios.get('static/怀化市沅陵县.json').then((res) => {
  let arr = res.data.coordinates
  let polygonFeature = new Feature({
   type: 'polygon',
   geometry: new Polygon(arr[0])
  })
  polygonFeature.setStyle(new Style({
   stroke: new Stroke({
   width: 2,
   color: [255, 255, 0, 0.8]
   }),
   fill: new Fill({
   color: [248, 172, 166, 0.2]
   })
   // text: new Text({
   // text: '这是区域'
   // })
  }))
  let polygonLayer = new VectorLayer({
   source: new VectorSource({
   features: [polygonFeature]
   })
  })
  this.gmap.addLayer(polygonLayer)
  })

vue项目中openlayers绘制行政区划

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Vue.js 相关文章推荐
在Vue中使用CSS3实现内容无缝滚动的示例代码
Nov 27 Vue.js
vue element实现表格合并行数据
Nov 30 Vue.js
Vue如何实现验证码输入交互
Dec 07 Vue.js
vue 实现基础组件的自动化全局注册
Dec 25 Vue.js
Vue通过阿里云oss的url连接直接下载文件并修改文件名的方法
Dec 25 Vue.js
vue3.0自定义指令(drectives)知识点总结
Dec 27 Vue.js
如何在VUE中使用vue-awesome-swiper
Jan 04 Vue.js
浅谈Vue开发人员的7个最好的VSCode扩展
Jan 20 Vue.js
vue3中provide && inject的使用
Jul 01 Vue.js
VUE使用draggable实现组件拖拽
Apr 06 Vue.js
vue 给数组添加新对象并赋值
Apr 20 Vue.js
Vue+penlayers实现多边形绘制及展示
Dec 24 #Vue.js
Vue使用鼠标在Canvas上绘制矩形
Dec 24 #Vue.js
vue绑定class的三种方法
Dec 24 #Vue.js
全面解析Vue中的$nextTick
Dec 24 #Vue.js
vue实现登录、注册、退出、跳转等功能
Dec 23 #Vue.js
vue下拉刷新组件的开发及slot的使用详解
Dec 23 #Vue.js
Vue3 实现双盒子定位Overlay的示例
Dec 22 #Vue.js
You might like
php解析html类库simple_html_dom(详细介绍)
2013/07/05 PHP
php制作unicode解码工具(unicode编码转换器)代码分享
2013/12/24 PHP
php实现监控varnish缓存服务器的状态
2014/12/30 PHP
调用js时ie6和ie7,ff的区别
2009/08/19 Javascript
JavaScript 学习笔记之操作符
2015/01/14 Javascript
ExtJs动态生成treepanel的Json格式
2015/07/19 Javascript
MVC Ajax Helper或Jquery异步加载部分视图
2015/11/29 Javascript
JavaScript动态插入CSS的方法
2015/12/10 Javascript
简单掌握JavaScript中const声明常量与变量的用法
2016/05/21 Javascript
输入法的回车与消息发送快捷键回车的冲突解决方法
2016/08/09 Javascript
JavaScript 身份证号有效验证详解及实例代码
2016/10/20 Javascript
详解Vue-cli代理解决跨域问题
2017/09/27 Javascript
React全家桶环境搭建过程详解
2018/05/18 Javascript
JavaScript事件对象深入详解
2018/12/30 Javascript
JavaScript实现的拼图算法分析
2019/02/13 Javascript
vue中使用router全局守卫实现页面拦截的示例
2020/10/23 Javascript
[01:29]Ti4循环赛第三日精彩回顾
2014/07/13 DOTA
Python对CSV、Excel、txt、dat文件的处理
2018/09/18 Python
PyCharm 创建指定版本的 Django(超详图解教程)
2019/06/18 Python
python 实现二维字典的键值合并等函数
2019/12/06 Python
Python实现图像去噪方式(中值去噪和均值去噪)
2019/12/18 Python
10款最佳Python开发工具推荐,每一款都是神器
2020/10/15 Python
Python 微信公众号文章爬取的示例代码
2020/11/30 Python
Python实现迪杰斯特拉算法并生成最短路径的示例代码
2020/12/01 Python
LocalStorage记住用户和密码功能
2017/07/24 HTML / CSS
经济实惠的豪华家具:My-Furniture
2019/03/12 全球购物
世嘉游戏英国官方商店:SEGA Shop UK
2019/09/20 全球购物
.NET面试问题集
2015/12/08 面试题
以思科路由器为例你写下单臂路由的配置命令
2013/08/03 面试题
竞聘医务工作人员的自我评价分享
2013/11/04 职场文书
领导班子四风表现材料
2014/08/23 职场文书
管理失职检讨书范文
2015/05/05 职场文书
Python中zipfile压缩包模块的使用
2021/05/14 Python
Mysql效率优化定位较低sql的两种方式
2021/05/26 MySQL
vue 给数组添加新对象并赋值
2022/04/20 Vue.js
PyCharm 配置SSH和SFTP连接远程服务器
2022/05/11 Python