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在图片上传的时候压缩图片
Nov 18 Vue.js
在Vue中使用CSS3实现内容无缝滚动的示例代码
Nov 27 Vue.js
Vue3 实现双盒子定位Overlay的示例
Dec 22 Vue.js
深入了解Vue动态组件和异步组件
Jan 26 Vue.js
WebStorm无法正确识别Vue3组合式API的解决方案
Feb 18 Vue.js
使用Vue.js和MJML创建响应式电子邮件
Mar 23 Vue.js
vue.js Router中嵌套路由的实用示例
Jun 27 Vue.js
详解gantt甘特图可拖拽、编辑(vue、react都可用 highcharts)
Nov 27 Vue.js
vue使用echarts实现折线图
Mar 21 Vue.js
vue使用wavesurfer.js解决音频可视化播放问题
Apr 04 Vue.js
Vue.Draggable实现交换位置
Apr 07 Vue.js
el-table-column 内容不自动换行的解决方法
Aug 14 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数组
2006/10/09 PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
2012/12/29 PHP
二进制交叉权限微型php类分享
2014/02/07 PHP
举例讲解PHP面对对象编程的多态
2015/08/12 PHP
用js判断用户浏览器是否是XP SP2的IE6
2007/03/08 Javascript
Jquery Select操作方法集合脚本之家特别版
2010/05/17 Javascript
js为鼠标添加右击事件防止默认的右击菜单弹出
2013/07/29 Javascript
简单易用的倒计时js代码
2014/08/04 Javascript
JavaScript实现找质数代码分享
2015/03/24 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
详解nodejs与javascript中的aes加密
2016/05/22 NodeJs
AngularJS基础 ng-readonly 指令简单示例
2016/08/02 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
jQuery中用on绑定事件时需注意的事项
2017/03/19 Javascript
ES6实现的遍历目录函数示例
2017/04/07 Javascript
简单的Python2.7编程初学经验总结
2015/04/01 Python
python中list列表的高级函数
2016/05/17 Python
深入理解NumPy简明教程---数组1
2016/12/17 Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
2017/04/18 Python
python使用opencv按一定间隔截取视频帧
2018/03/06 Python
用python简单实现mysql数据同步到ElasticSearch的教程
2018/05/30 Python
Python时间序列缺失值的处理方法(日期缺失填充)
2019/08/11 Python
基于python的selenium两种文件上传操作实现详解
2019/09/19 Python
python数据预处理 :数据共线性处理详解
2020/02/24 Python
python 使用事件对象asyncio.Event来同步协程的操作
2020/05/04 Python
keras Lambda自定义层实现数据的切片方式,Lambda传参数
2020/06/11 Python
Python Tricks 使用 pywinrm 远程控制 Windows 主机的方法
2020/07/21 Python
泰国汽车、火车和轮渡票预订网站:Bus Online Ticket
2017/09/09 全球购物
Missguided美国官网:英国时尚品牌
2018/01/18 全球购物
英国办公用品商店:Office Outlet
2018/04/04 全球购物
若干个Java基础面试题
2015/05/19 面试题
高中物理教学反思
2014/02/08 职场文书
班级课外活动总结
2014/07/09 职场文书
软件项目经理岗位职责
2015/04/01 职场文书
【HBU】数据库第四周 单表查询
2021/04/05 SQL Server
24年收藏2000多部退役军用电台
2022/02/18 无线电