Leaflet系列——【一】初识Leaflet与Leaflet视图操作

初识Leaflet(vue3 )

前言:当你熟悉了openlayer、mapbox、cesium等一些GIS框架之后,对于我们开发来说其实他们的本质就是往瓦片上面叠加图层、【点、线、面、瓦片、geoJson、热力图、图片、svg等等】都是一层层的Layer图层,基本上大差不差,然后这个Leaflet系列我也就基本上照着前面OL的风格写了
OpenLayer 请移步到这

安装依赖

npm i leaflet

1、初始化地图

import L from 'leaflet';
import 'leaflet/dist/leaflet.css';onMounted(() => {initMap()
});
let map = null;function initMap() {// 这里控制的经纬度,纬度在前,经度在后// 地图options配置可见 https://leafletjs.cn/reference.html#map-optionmap = L.map('map',{}).setView([23, 129], 5);const sourceUrl = 'https://server.arcgisonline.com/arcgis/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}.png';const targetUrl = 'http://server.arcgisonline.com/arcgis/rest/services/Elevation/World_Hillshade_Dark/MapServer/tile/{z}/{y}/{x}.png';// 添加一个地图瓦片图层(也可以使用img图像,地图就有会用img展示)const tileLayer = L.tileLayer(sourceUrl, {// 关于options配置可见 https://leafletjs.cn/reference.html#tilelayermaxZoom: 18,minZoom: 2,// 版权文字attribution: '© modify'});tileLayer.addTo(map);
}

在这里插入图片描述

2、更换瓦片

在leaflet当中可以在初始化地图得到的一个layer(图层)给这个图层重新设置一个瓦片url,完成瓦片切换效果

 // tileLayer methods  这里简单实现,直接五秒后执行这里的代码setTimeout(() => {// 重新设置瓦片 --->  更改瓦片tileLayer.setUrl(targetUrl);}, 5000);

3、层级切换

和初始化地图是一样的,重新通过setView重新设置即可

 map.setView([23, 129], 6);

4、区域定位

通过L.map('map')实例的fitBounds方法直接进行定位

  const bounds = [[24.5, 125.7], [26.1, 126.8]];map.fitBounds(bounds);

5、地图状态修改

其中3和4都是修改地图的状态,其中还包括一些修改最大最小层级、缩放、平移、平滑等。
移步 —> 修改地图状态

下面的代码也简单都实现一下,仅供参考

const changeMap = () => {// map.setView([43, 124], 4);// map.setZoom(6);// map.zoomIn(7);// map.zoomOut(5);// map.setZoomAround([23, 120]);
};

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

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

相关文章

400元已到账,成交从认真开始

昨天发了一个值班的需求,收到了很多好友的响应,这里非常感谢关注创业程序员卡酷的老朋友、新朋友。今天分享一下:拓展、合作、成交 现在不管是IT行业还是其他行业,大环境可谓一片惨淡,35乃至30找不到工作的失业人员一抓…

『大模型笔记』Phidata 为LLMs添加了记忆、知识和工具!

Phidata 为LLMs添加了记忆、知识和工具! 文章目录 零. LLM OS一. 什么是 Phidata?二. 为什么选择 phidata?三. 工作原理四. 参考文献零. LLM OS 基于 GPT-4o 实现的 LLM OS 形态如下:1. GPT-4o 作为内核 - 操作系统2. 模型调用计算资源:Tools,结合 Memory3. 可以读写内容…

MYSQL DBA运维实战 SQL2

1.DML:通过SQL语句中的DML语言来实现数据的操作。 insert实现数据的插入。 update实现数据的更新。delete实现数据的删除。 插入,完全插入insert into 表名 values(值) 非完全插入:insert into 表名(列名,列名) values(值) 更新&#xff0…

内网工具之LDP的使用

LDP 是微软自带的一款活动目录信息查询工具,在域控的 cmd 窗口执行 ldp 命令即可打开 LDP 工具。普通域成员主机默认是没有 LDP 工具的,可以自行上传ldp.exe 工具上去查询活动目录信息。不在域内的机器,也可以通过上传 ldp.exe 工具上去执行。…

前端工程化 - 快速通关 - ES6

目录 ES6 1.1 let 1.2 const 1.3解构 1.4链判断 1.5参数默认值 1.6箭头函数 1.7模板字符串 1.8Promise 1.9Async 函数 1.10模块化 ES6 ●ECMAScript(ES) 是规范、 JavaScript 是 ES 的实现 ●ES6 的第一个版本 在 2015 年 6 月发布&#xff0c…

OpenAI 发布了免费的 GPT-4o,国内大模型还有哪些机会?

大家好,我是程序员X小鹿,前互联网大厂程序员,自由职业2年,也一名 AIGC 爱好者,持续分享更多前沿的「AI 工具」和「AI副业玩法」,欢迎一起交流~ 这是今天在某乎看到一个问题:OpenAI 发完 GPT-4o&…

mysql5和mysql8同时存在

Win10安装两个不同版本MySQL数据库(一个5.7,一个8.0.17)_两个数据库的版本不同(我本地的是mysql5.7,线上是mysql8),怎么进行数据的同步?-CSDN博客 安装两个版本的mysql出现的问题和解决_mysql安装两个版本其中一个不适用-CSDN博客 一台电脑…

softmax函数与交叉熵损失详解

文章目录 一、softmax函数1.1 引入指数形式的优点1.2 引入指数形式的缺点 二、交叉熵损失函数2.1 交叉熵损失函数2.2 softmax与交叉熵损失 参考资料 一、softmax函数 softmax用于多分类过程中,它将多个神经元的输出,映射到(0,1)区…

k8s v1.20二进制部署 部署 CNI 网络组件 部署 Calico

一、部署 flannel 1.1.K8S 中 Pod 网络通信 ●Pod 内容器与容器之间的通信 在同一个 Pod 内的容器(Pod 内的容器是不会跨宿主机的)共享同一个网络命名空间,相当于它们在同一台机器上一样,可以用 localhost 地址访问彼此的端口。…

MATLAB蚁群算法求解带时间窗的旅行商TSPTW问题代码实例

MATLAB蚁群算法求解带时间窗的旅行商TSPTW问题代码实例 蚁群算法编程求解TSPTW问题实例: 在经纬度范围为(121, 43)到(123, 45)的矩形区域内,散布着1个商家(编号1)和25个顾客点(编号为226),各个…

HTML常见标签-段落标签

段落标签 段落标签一般用于定义一些在页面上要显示的大段文字,多个段落标签之间实现自动分段的效果 代码 <p>记者从工信部了解到&#xff0c;近年来我国算力产业规模快速增长&#xff0c;年增长率近30%&#xff0c;算力规模排名全球第二。</p><p>工信部统计…

基于51单片机的电子门铃设计( proteus仿真+程序+设计报告+原理图+讲解视频)

基于51单片机电子门铃设计( proteus仿真程序设计报告原理图讲解视频&#xff09; 仿真图proteus7.8及以上 程序编译器&#xff1a;keil 4/keil 5 编程语言&#xff1a;C语言 设计编号&#xff1a;S0091 1. 主要功能&#xff1a; 基于51单片机的智能门铃设计 1、系统采用…