尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
Leaflet 通过二维图片生成canvas三维地图
Leaflet是一个很成熟的地图组件其中有一个api是imageOverlay通过此api可实现功能。过程很简单首先需要UI提供一张三维地图的图片然后将图片根据bouder放上去即可。1、创建一个地图容器div classmap idleafletMap/div2、创建地图this.map L.map(leafletMap, {crs: L.CRS.Simple,minZoom: -5,maxZoom: 20,center: [500, 500],zoom: 0,doubleClickZoom: false,attributionControl: false,zoomControl: false,zoomSnap: 0.1,zoomDelta: 0.1,rander: {background: none,},});this.map.getContainer().style.background none;//取消地图的自带背景或将地图的背景置为透明transparent3、添加影像图层this.markerlayer L.layerGroup();this.imagelayer.addTo(this.map);4、定义图片的边界const bounds [[0, 0],[1000, 1000],];5、添加图片图层const image L.imageOverlay(require(./images/map_new.png), bounds);this.imagelayer.addLayer(image);6、设置地图视图到图片的边界this.map.fitBounds(bounds);完整代码如下可直接复制替换图片本地地址插入组件即可使用。template div classbox div classmap idleafletMap/div /div /template script export default { data() { return { map: null, markerlayer: null, imagelayer: null, }; }, mounted() { this.mapInit(); }, methods: { mapInit() { this.map L.map(leafletMap, { crs: L.CRS.Simple, minZoom: -5, maxZoom: 20, center: [500, 500], zoom: 0, doubleClickZoom: false, attributionControl: false, zoomControl: false, zoomSnap: 0.1, zoomDelta: 0.1, rander: { background: none, }, }); this.map.getContainer().style.background none; this.imagelayer L.layerGroup(); this.imagelayer.addTo(this.map); // 定义图片的边界 const bounds [ [0, 0], [1000, 1000], ]; // 添加图片图层 const image L.imageOverlay(require(./images/map_new.png), bounds); this.imagelayer.addLayer(image); // 设置地图视图到图片的边界 this.map.fitBounds(bounds); }, }, }; /script style scoped langscss .box { position: absolute; width: 100%; height: 100%; z-index: 1; } .map { width: 100%; height: 100%; } /style具体页面效果如下如想添加图片或添加鼠标事件可看我下一篇文章
RELATED

相关推荐

集团网站群建设:打破信息孤岛,打造数字化协同新生态的实战思考

集团网站群建设:打破信息孤岛,打造数字化协同新生态的实战思考

今天咱们不整那些虚头巴脑的理论,就掏心窝子聊聊一个很多大企业、特别是集团型公司每天都在头疼,却始终没完全解决的事儿:集团网站群建设。你是不是也有过这种经历?你是集团总部负责IT或者品牌传播的领导,底下有一堆子公司、孙公司,大家各自为战,网站风格五花八门,有的…

📅 2026/9/24 6:13:19
电气工程师必读:从指令集架构到硬件设计的核心指南

电气工程师必读:从指令集架构到硬件设计的核心指南

1. 项目概述:为什么电气工程师需要懂指令集架构? 如果你是一名电气工程师,无论是设计嵌入式系统、开发硬件驱动,还是优化电源管理,你可能都曾有过这样的困惑:为什么我写的底层代码,在这个芯片上…

📅 2026/8/12 7:27:42
AI开发中段错误智能诊断:从内存访问原理到自动化修复实践

AI开发中段错误智能诊断:从内存访问原理到自动化修复实践

1. 项目概述:当AI遇上段错误,一场内存的“捉迷藏” 如果你是一名AI应用开发者、算法工程师,或者正在用PyTorch、TensorFlow捣鼓自己的模型,那么“Segmentation fault (core dumped)”这行冰冷的终端输出,大概率是你深夜…

📅 2026/9/16 17:31:14
MORE NEWS

更多资讯

📰

Trae与Cursor深度对比:AI编程工具六大维度选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

代码签名证书全链路实战:从选型到CI/CD集成与售后避坑指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

LTspice变压器建模全解析:耦合电感、参数化设计与反激仿真实践

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

扫雷游戏过程简介

***扫雷游戏的编写***首先扫雷代码的编写不同于其他简单代码的编写其需要两个.c文件和自己创建的头文件代码编写过程:1. 先写主函数的菜单界面(这里就不多赘述就是一个简单的main函数与函数调用的问题)2.给棋盘初始化(这里需要两个…

📰

POE供电的温湿度变送器如何落地?机房动环监测实践与选型指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

📰

Orleans 虚拟 Actor 模型收益与权衡详解:稳定身份、轮次执行与可组合的运行时服务

后端微服务 【免费下载链接】orleans Cloud Native application framework for .NET 项目地址: https://gitcode.com/gh_mirrors/or/orleans 点击查看 免费下载 虚拟 Actor(Virtual Actor)编程模型是 Orleans 作为 .NET 云原生框架&#xff…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬