leaflet学习笔记-地图缩略图(鹰眼)的添加(三)

介绍

地图缩略图控件有助于用户了解主窗口显示的地图区域在全球、全国、全省、全市等范围内的相对位置,也称为鹰眼图。Leaflet提供了好几种地图缩略图控件,本文介绍其中一个最常用控件,即插件Leaflet.MiniMap。

依赖添加

这些地图控件都可以在官网的Plugins中找到并且可以下载,但是由于我们的项目是vue项目,所以我还是坚持用npm下载,网上很多人都不推荐这种方式,因为有些控件是英文的提示之类的,不好做修改。但是作为学习我们还是怎么简单怎么来吧。

npm i leaflet-minimap

vue页面中引入

import MiniMap from 'leaflet-minimap';
//一定要引入样式
import "leaflet-minimap/dist/Control.MiniMap.min.css";

这里要注意一定要引入样式css文件,不然控件的有些功能会异常

创建缩略图的图层

缩略图中也是一个缩小版的地图,所以当然也需要给它一个图层,当然也可以是图层的组合,但是这里我们需要注意,地图缩略图控件中的地图图层不能再加载到主窗口地图视图中,否则会产生一些奇怪的问题。这里我们定义一个缩略图的图层,在缩略图中显示

  // 定义一个图层(注意:小地图的layer不能和地图上共用一个,否则无法加载)const minilayer = L.tileLayer(`https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer/tile/{z}/{y}/{x}`);

添加地图缩略图(鹰眼)

    let miniMap = new MiniMap(minilayer, {// 鹰眼图配置项,参数非必须,可以忽略使用默认配置width: 200, // 鹰眼图宽度height: 200, // 鹰眼图高度toggleDisplay: true, // 是否显示最小化按钮minimized: false, // 是否最小化位置开始}).addTo(this.mainMap);

完整代码

<template><div id="mainMap"></div>
</template><script>
import MiniMap from 'leaflet-minimap';
import "leaflet-minimap/dist/Control.MiniMap.min.css";export default {name: "MainMap",data: () => {return {centerLatLng: [25, 102.7],mainMap: null}},methods: {},mounted() {this.mainMap = L.map('mainMap', {center: [25, 102.7], // 地图中心zoom: 14, //缩放比列zoomControl: true, //禁用 + - 按钮doubleClickZoom: true, // 禁用双击放大attributionControl: false, // 移除右下角leaflet标识});//添加瓦片图层(作为底图备选)let openstreetmapLayer = L.tileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png?{foo}', {foo: 'bar'}).addTo(this.mainMap);let somedomainLayer = L.tileLayer('http://{s}.somedomain.com/{foo}/{z}/{x}/{y}.png', {foo: 'bar'});// 定义一个图层(注意:小地图的layer不能和地图上共用一个,否则无法加载)const minilayer = L.tileLayer(`https://map.geoq.cn/ArcGIS/rest/services/ChinaOnlineStreetWarm/MapServer/tile/{z}/{y}/{x}`);let circle = L.circle(this.centerLatLng, {radius: 100, fillColor: 'red'});let littleton = L.marker([25.61, 102.7]).bindPopup('This is Littleton, CO.');let denver = L.marker([25.61, 102.71]).bindPopup('This is Denver, CO.');let aurora = L.marker([25.61, 102.72]).bindPopup('This is Aurora, CO.');let golden = L.marker([25.61, 102.73]).bindPopup('This is Golden, CO.');//相当于arcgis的featureLayerlet featureGroup = L.featureGroup([circle, littleton, denver, aurora, golden]);featureGroup.addTo(this.mainMap);//聚焦所有的markerlet bound = featureGroup.getBounds();this.mainMap.fitBounds(bound);//基础底图(每次只能有一个)let baseLayers = {openstreetmapLayer,somedomainLayer,};//覆盖图层let overlays = {// circle,// littleton,// denver,// aurora,// golden,'<i style="color:red;">layerGroup</i>': featureGroup};//添加图层管理组件let layerControl = L.control.layers(baseLayers, overlays, {position: 'topright'}).addTo(this.mainMap);let miniMap = new MiniMap(minilayer, {// 鹰眼图配置项,参数非必须,可以忽略使用默认配置width: 200, // 鹰眼图宽度height: 200, // 鹰眼图高度toggleDisplay: true, // 是否显示最小化按钮minimized: false, // 是否最小化位置开始}).addTo(this.mainMap);}
}
</script><style scoped>#mainMap {width: 100vw;height: 100vh;
}
</style>

本文为学习笔记,仅供参考

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/581640.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用机器学习进行语法错误检测/纠正

francescofranco_39234 一、说明 一般的学习&#xff0c;特别是深度学习&#xff0c;促进了自然语言处理。各种模型使人们能够执行机器翻译、文本摘要和情感分析——仅举几个用例。今天&#xff0c;我们将研究另一个流行的用途&#xff1a;我们将使用Gramformer构建一个用于机器…

React学习计划-React16--React基础(七)redux使用与介绍

笔记gitee地址 一、redux是什么 redux是一个专门用于做状态管理的js库&#xff08;不是react插件库&#xff09;它可以用在react、angular、vue的项目中&#xff0c;但基本与react配合使用作用&#xff1a;集中式管理react应用中多个组件共享的状态 二、什么情况下需要使用r…

sheng的学习笔记-卷积神经网络

源自吴恩达的深度学习课程&#xff0c;仅用于笔记&#xff0c;便于自行复习 导论 1&#xff09;什么是卷积神经网络 卷积神经网络&#xff0c;也就是convolutional neural networks &#xff08;简称CNN&#xff09;&#xff0c;使用卷积算法的神经网络&#xff0c;常用于计…

感染了后缀为.[sqlback@memeware.net].2700勒索病毒如何应对?数据能够恢复吗?

导言&#xff1a; 近期&#xff0c;[sqlbackmemeware.net].2700 勒索病毒成为网络安全的一大威胁。该勒索病毒采用高度复杂的加密算法&#xff0c;将用户文件加密并勒索赎金。了解该病毒的特征对于有效恢复被加密数据以及预防进一步感染至关重要。如果受感染的数据确实有恢复的…

linux 网络工具(一)

linux 网络工具 1. nmcli命令1.1 介绍1.2 networking 网络控制1.3 connection 连接管理1.4 device 设备管理1.5 nmcli 返回状态码 2. ifcfg命令家族2.1 ifconfig2.2 route2.3 netstat 3. 静态路由CentosUbuntu - netplanUbuntu - network-manager 1. nmcli命令 1.1 介绍 RHEL…

工具系列:TimeGPT_(6)同时预测多个时间序列

TimeGPT提供了一个强大的多系列预测解决方案&#xff0c;它涉及同时分析多个数据系列&#xff0c;而不是单个系列。该工具可以使用广泛的系列进行微调&#xff0c;使您能够根据自己的特定需求或任务来定制模型。 # Import the colab_badge module from the nixtlats.utils pac…

HTML简介、基本骨架、标签的关系、注释、路径

1 HTML HTML超文本标记语言 超文本——链接 标记——标记也叫标签&#xff0c;带尖括号<>的文本 标签语法&#xff1a; 标签成对出现&#xff0c;中间包裹内容 <>里面放英文字母(标签名) 结束标签比开始标签多/ 拓展&#xff1a; 双标签&#xff1a;成对出现的标签…

生产系统稳定上线600天!中国联通CUDB for OceanBase的开源共建和规模化应用

中国联通软件研究院架构部平台承载了上千应用的数据库需求&#xff0c;并且现存大量数据库使用过程缺少规范、缺少监控&#xff0c;同时还存在着数据库核心技术相关风险。为了实现核心技术自主可控&#xff0c;及时为用户解决线上问题、满足用户的功能需求&#xff0c;提供物美…

gnu工程的编译 - 以libiconv为例

文章目录 gnu工程的编译 - 以libiconv为例概述gnu官方源码包的发布版从官方的代码库直接迁出的git版源码如果安装了360, 需要添加开发相关的目录到信任区生成 configrue 的方法备注END gnu工程的编译 - 以libiconv为例 概述 gnu工程的下载分2种: gnu官方源码包的发布版 这种…

gitee+picgo+typora图床搭建

giteepicgotypora图床搭建 1.安装typora 官网下载直接安装&#xff1a;https://www.typora.io/#download 2.编辑typora图像设置 打开 文件 -> 偏好设置 -> 图像设置 插入图片时 选择 上传图片设置 上传服务 为 PicGo-Core(command line) 3.为typora安装PicGo-Core 点…

达梦dm.ini参数之SELECT_LOCK_MODE详解

一、背景 1.现象概述 某项目当晚分区表变更&#xff0c;因为manager工具多开了1个窗口执行了语句慢取消了&#xff0c;新开了一个会话窗口执行添加分区/删除分区/truncate分区卡死了&#xff0c;v$session查不到关于这张分区表的阻塞和事务&#xff0c;但是在v$lock里根据表的…

Golang 通用代码生成器仙童发布 2.4.0 电音仙女尝鲜版二,改进三大部分生成功能群

Golang 通用代码生成器仙童发布 2.4.0 电音仙女尝鲜版二&#xff0c;改进三大部分生成功能群 Golang 通用代码生成器仙童已发布 2.4.0 电音仙女尝鲜版二及其介绍视频。尝鲜版二改进了三大部分生成功能群。 视频请见&#xff1a; https://www.bilibili.com/video/BV1Q64y1H75…

CH07_简单化

Facade 模式 外观模式&#xff08;Facade&#xff09;&#xff0c;为子系统中的一组接口提供一个一致的界面&#xff0c;此模式定义了一个高层接口&#xff0c;这个接口使得这一个系统更加容易使用。 类图 说明 Facade&#xff08;窗口&#xff09; Facade角色是代表构成系统…

【用unity实现100个游戏之19】制作一个3D传送门游戏,实现类似鬼打墙,迷宫,镜子,任意门效果

最终效果 文章目录 最终效果素材第一人称人物移动开门效果显示原理渲染相机跟着我们视角移动门的摄像机跟着我们旋转近裁剪面设置传送配置代码实现传送效果结束完结素材 https://assetstore.unity.com/packages/3d/props/interior/door-free-pack-aferar-148411

andriod安卓水果商城系统课设

​ 一、目的及任务要求 随着当今社会经济的快速发展和网络的迅速普及&#xff0c;手机基本成为了每个人都随身携带的电子产品。传统的购物方式已经满足不了现代人日益追求便利及高效率的购物心理&#xff0c;而通过移动手机上的在线购物系统&#xff0c;可以便捷地甚至足不出…

XV7011BB陀螺传感仪的规格书

角速率输出(16/24bit)优异的温度偏置稳定性工作温度范围-20℃至80℃(可选:-40℃至85℃) 角速率输出(16/24bit)优异的温度偏置稳定性工作温度范围-20℃至80℃(可选:-40℃至85℃)内置温度传感器内置可选数字滤波器低功耗视频:XV7000系列&#xff0c;用于…

全面解析 I2C 通信协议

全面解析 I2C 通信协议 lvy 嵌入式学习规划 2023-12-22 21:20 发表于陕西 嵌入式学习规划 嵌入式软件、C语言、ARM、Linux、内核、驱动、操作系统 80篇原创内容 公众号 点击左上方蓝色“嵌入式学习规划”&#xff0c;选择“设为星标” 1、什么是I2C协议 I2C 协议是一个允许…

【2023年12月18日-12月25日】一周AI咨询更新

上周&#xff0c;关于Google的Bard和Midjourney v6的讨论异常火热。 接下来&#xff0c;让我们回顾一下上周那些引人注目的AI新闻。 ① 已近乎真实拍摄&#xff1a;Midjourney v6的画质令人惊叹 由Midjourney v6制作的图片&#xff0c;质量之高&#xff0c;媲美电影级别&…

关于使用Selenium获取网页控制台的数据

背景&#xff1a; 需要获取网页的控制台的数据&#xff0c;如下图 在此文章将使用到 Pycharm 和 Selenium4 Pycharm安装 Selenium安装 from selenium import webdriver from selenium.webdriver.common.by import By import time# 创建浏览器对象 browser webdriver.Chro…

【Recruitment Mercedes Benz】

Network I) JDII) IPv4与IPv6之间的区别是什么III) was advices3.1&#xff09; 防火墙&#xff0c;配置&#xff0c;数据的in/out (data flow in or flow out)3.2&#xff09; 域名&#xff0c;网址&#xff0c;端口3.3) 三次握手&#xff0c;四次挥手3.4) TCP/IP, 几层协议&a…