当前位置: 首页 > news >正文

Leaflet加载山东省天地图(第三版)基于vue2环境

直接上代码Map.vue

<template><divclass="map-container"><!-- 地图容器 --><divid="shandongMap"class="map-div"></div><!-- 自定义切换按钮 --><divclass="layer-switcher"><button:class="{ active: currentLayer === 'sl' }"@click="switchLayer('sl')">矢量底图</button><button:class="{ active: currentLayer === 'yx' }"@click="switchLayer('yx')">影像底图</button></div></div></template><script>importLfrom'leaflet';import'leaflet/dist/leaflet.css';import"proj4leaflet"exportdefault{name:'GMap',data(){return{map:null,currentLayer:'sl',// 默认加载矢量底图tk:"",//改成自己申请的token// 图层实例缓存layers:{sl:null,yx:null,yxzj:null}};},mounted(){this.initMap();},methods:{// 初始化地图initMap(){varCRS_4490=newL.Proj.CRS('EPSG:4490','+proj=longlat +ellps=GRS80 +no_defs',{resolutions:[1.40625,0.703125,0.3515625,0.17578125,0.087890625,0.0439453125,0.02197265625,0.010986328125,0.0054931640625,0.00274658203125,0.001373291015625,6.866455078125e-4,3.4332275390625e-4,1.71661376953125e-4,8.58306884765625e-5,4.291534423828125e-5,2.1457672119140625e-5,1.0728836059570312e-5,5.364418029785156e-6,2.682209064925356e-6,1.3411045324626732e-6,6.705522662313365e-7,],origin:[-180,90],});constcenter=[36.663349439471915,116.9742519218228];this.map=L.map('shandongMap',{center:center,zoom:8,minZoom:5,maxZoom:18,crs:CRS_4490,zoomControl:false// 可设为true以显示默认的缩放控件});// 初始化各个图层this.createLayers();// 默认加载矢量图层this.switchLayer('sl');},// 创建天地图图层createLayers(){vartVue=this;//电子地图vartdtVecLayerURL="https://service.sdmap.gov.cn/tileservice/sdpubmap"+"?layer=sdpubmap&style=default&tilematrixset=default028mm&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix={z}&TileCol={x}&TileRow={y}&tk="+tVue.tk;//影像地图vartdtImgLayerURL="https://service.sdmap.gov.cn/tileservice/sdrasterpubmap"+"?layer=SDRasterPubMap&style=default&tilematrixset=default028mm&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix={z}&TileCol={x}&TileRow={y}&tk="+tVue.tk;vartdtImgZJLayerURL="https://service.sdmap.gov.cn/tileservice/sdrasterpubmapdj"+"?layer=sdrasterpubmapdj&style=default&tilematrixset=default028mm&Service=WMTS&Request=GetTile&Version=1.0.0&Format=image/png&TileMatrix={z}&TileCol={x}&TileRow={y}&tk="+tVue.tk;tVue.layers.sl=L.tileLayer(tdtVecLayerURL,{tileSize:256});tVue.layers.yx=L.tileLayer(tdtImgLayerURL,{tileSize:256});tVue.layers.yxzj=L.tileLayer(tdtImgZJLayerURL,{tileSize:256});},// 切换图层方法switchLayer(type){if(!this.map)return;// 移除当前所有底图和注记Object.values(this.layers).forEach(layer=>{try{this.map.removeLayer(layer);}catch(ex){}});// 添加目标图层if(type==='sl'){this.map.addLayer(this.layers.sl);}elseif(type==='yx'){this.map.addLayer(this.layers.yx);this.map.addLayer(this.layers.yxzj);}this.currentLayer=type;// 解决切换图层后地图显示不全或渲染卡顿的问题setTimeout(()=>{this.map.invalidateSize();},0);}}};</script><stylescoped>.map-container{position:relative;width:100%;height:100%;}.map-div{width:100%;height:100%;background-color:#f0f0f0;}/* 自定义图层切换按钮样式 */.layer-switcher{position:absolute;top:10px;right:10px;z-index:1000;display:flex;flex-direction:column;gap:5px;}.layer-switcher button{padding:8px 12px;border:1px solid #ccc;background-color:#fff;cursor:pointer;border-radius:4px;font-size:14px;transition:all 0.3s;}.layer-switcher button.active{background-color:#1890ff;color:#fff;border-color:#1890ff;}</style>

效果图

http://www.jsqmd.com/news/1171880/

相关文章:

  • SAP 委外加工 MRP 跑出计划订单 vs 采购申请:特殊采购类30与F的2种配置对比
  • 连续可表数列问题解析:从2022北京高考题到3类组合数学经典模型
  • CANoe 16.0 半实物仿真实战:3阶段集成测试与CAPL脚本编写要点
  • 10个趣味编程游戏网站:用游戏化方式高效学习Python
  • AI 率降到多少才算安全?怎么稳稳压到 15% 以下
  • OpenAI 终于把产品接上了
  • SSH-Keygen 与 Git 多平台配置:Windows/Linux/Mac 3系统密钥生成与验证全流程
  • TLA2518与dsPIC30F4013构建多通道数据采集系统
  • Julia构建生产级RESTful API:Genie框架实战指南
  • OMV 6 安装后网络配置实战:DHCP获取IP与3种静态IP设置方法对比
  • 工业负载控制方案:TPD2015FN与MKV58F1M0VLQ24的高效组合
  • 《深度拆解一院两区架构改造难点:如何为大型医疗机构智慧化、信创化改造提供可复用的工程实践方案》
  • 伺服减速机厂家怎么选?重点看动态扭矩和惯量匹配
  • srs4接入国标 GB/T 28181设备
  • 精通Java字节码逆向工程:Bytecode Viewer实战指南
  • 2026年7月最新哈尔滨格拉苏蒂官方售后客服服务电话及地址网点大全 - 亨得利钟表维修中心
  • 图论动态规划实战:从‘挖地雷’问题看 DAG 上最长路径的 3 个关键步骤
  • Twitter数据导出实战指南:三步实现完整社交媒体数据备份
  • 数据结构:用栈实现队列
  • 2026杭州漏水检测维修口碑榜TOP5权威推荐:正规防水补漏公司甄选-卫生间/厨房/阳台/屋顶/地下室渗漏水精准查漏:房屋防水补漏避坑指南 - 安佳防水
  • AI视频生成在项目管理中的应用与集成指南
  • AI测试工程师 2026版学习路线:6大阶段技能拆解与12K-26K薪资对标
  • 《口径》4K惊悚片解析:人性道德困境与视听语言艺术
  • 《无人查收》4K影视技术解析:光影音效如何塑造人性博弈与暗黑美学
  • 子网掩码 255.255.255.0 与 255.255.255.128 对比:3 种场景下的网络连通性实测
  • 2026晋中漏水检测维修口碑榜TOP5权威推荐:正规防水补漏公司甄选-卫生间/厨房/阳台/屋顶/地下室渗漏水精准查漏:房屋防水补漏避坑指南 - 安佳防水
  • PWM死区互补原理初识
  • 基于TensorFlow的端到端垃圾分类系统:PC训练+树莓派视频采集+Arduino机械控制全链路实现
  • 2026年7月最新上海宇舶官方售后客服中心地址电话及服务网点分布 - 亨得利官方服务中心
  • Unreal Engine XR开发实战:从蓝图交互到多平台部署的完整指南