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项目利用axios请求接口下载excel
Nov 17 Vue.js
Vue项目如何引入bootstrap、elementUI、echarts
Nov 26 Vue.js
vue表单验证之禁止input输入框输入空格
Dec 03 Vue.js
vuex Module将 store 分割成模块的操作
Dec 07 Vue.js
Vue与React的区别和优势对比
Dec 18 Vue.js
在vue项目中封装echarts的步骤
Dec 25 Vue.js
vue中实现点击空白区域关闭弹窗的两种方法
Dec 30 Vue.js
vue路由实现登录拦截
Mar 24 Vue.js
详解vue中v-for的key唯一性
May 15 Vue.js
vue基于Teleport实现Modal组件
May 31 Vue.js
vue项目中的支付功能实现(微信支付和支付宝支付)
Feb 18 Vue.js
Vue监视数据的原理详解
Feb 24 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/12/08 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
2014/01/03 PHP
PHP 验证身份证是否合法的函数
2017/02/09 PHP
php基于自定义函数记录log日志方法
2017/07/21 PHP
php 删除一维数组中某一个值元素的操作方法
2018/02/01 PHP
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
教你如何自定义百度分享插件以及bshare分享插件的分享按钮
2014/06/20 Javascript
js限制input标签中只能输入中文
2015/06/26 Javascript
简单谈谈Javascript中类型的判断
2015/10/19 Javascript
基于jQuery实现简单的折叠菜单效果
2015/11/23 Javascript
轻松学习jQuery插件EasyUI EasyUI创建CRUD应用
2015/11/30 Javascript
javascript学习小结之prototype
2015/12/03 Javascript
不定义JQuery插件 不要说会JQuery
2016/03/07 Javascript
手机端js和html5刮刮卡效果
2020/09/29 Javascript
详解angularJS动态生成的页面中ng-click无效解决办法
2017/06/19 Javascript
详解基于webpack2.x的vue2.x的多页面站点
2017/08/21 Javascript
javascript读取本地文件和目录方法详解
2020/08/06 Javascript
Vue 样式切换及三元判断样式关联操作
2020/08/09 Javascript
记录Django开发心得
2014/07/16 Python
Python中对象迭代与反迭代的技巧总结
2016/09/17 Python
python excel使用xlutils类库实现追加写功能的方法
2018/05/02 Python
Python使用sqlalchemy模块连接数据库操作示例
2019/03/13 Python
Django将默认的SQLite更换为MySQL的实现
2019/11/18 Python
TensorFLow 变量命名空间实例
2020/02/11 Python
如何实现更换Jupyter Notebook内核Python版本
2020/05/18 Python
Python生成随机验证码代码实例解析
2020/06/09 Python
如何理解python对象
2020/06/21 Python
python3.6中anaconda安装sklearn踩坑实录
2020/07/28 Python
澳洲Chemist Direct药房中文网:澳洲大型线上直邮药房
2019/11/04 全球购物
工程预算与管理应届生求职信
2013/10/06 职场文书
电厂厂长岗位职责
2014/01/02 职场文书
2014基层党员干部学习全国两会心得体会
2014/03/17 职场文书
全国文明单位申报材料
2014/05/31 职场文书
长辈生日祝福语大全(72句)
2019/08/09 职场文书
golang 实现时间戳和时间的转化
2021/05/07 Golang
利用 SQL Server 过滤索引提高查询语句的性能分析
2021/07/15 SQL Server