leaflet在天地图上添加poi兴趣点

news2024/10/6 22:30:45

前言

书接上节,在上一篇博客加载的天地图的基础上,加载poi兴趣点。

上节传送:使用leaflet在html中加载天地图且去掉左上角的缩放图标以及右下角的logo

一、加载poi的方法

leaflet通过 L.marker 方法用来加载poi,我们只需填入poi的经纬度即可创建poi对象,然后把创建的poi对象添加到地图上。

L.marker([22.84901, 108.29784]).addTo(map);  //将这个poi添加到地图上(注意顺序是:纬度,经度)

会使用leaflet的默认图标进行显示,如图:
在这里插入图片描述

二、改变图标样式

我们可以使用自己的图标来标识poi。首先使用 L.icon 方法,创建一个icon对象,将icon对象当成参数传递到L.marker方法中用来创建poi对象即可。

const myicon = L.icon({
        iconUrl: "./icons/favicon.ico",  //图标地址
        iconSize: [30, 30]  //图标大小[宽, 高]
    })

L.marker([22.84901, 108.29784], {icon: myicon}).addTo(map);  //将这个poi添加到地图上

效果如图:
在这里插入图片描述

三、批量加载poi

我这里自己模拟一些poi数据,方便测试,每一条poi数据包含名称、经度、纬度、类型,数据如下:

var poi = [
        {name: "希望小学", lon: "108.29784", lat: "22.84901", type: ""},
        {name: "蜜雪冰城", lon: "109.24071", lat: " 23.73236", type: ""},
        {name: "天猫超市", lon: "109.43442", lat: "24.33196", type: ""},
        {name: "海底捞", lon: "110.30594", lat: "25.28450", type: ""}
    ];

通过forEach方法来遍历poi数据,实现批量加载poi兴趣点。

    var poi = [
        {name: "希望小学", lon: "108.29784", lat: "22.84901", type: ""},
        {name: "蜜雪冰城", lon: "109.24071", lat: " 23.73236", type: ""},
        {name: "天猫超市", lon: "109.43442", lat: "24.33196", type: ""},
        {name: "海底捞", lon: "110.30594", lat: "25.28450", type: ""}
    ];
    //更改默认的poi图标
    const myicon = L.icon({
        iconUrl: "./icons/favicon.ico",  //图标地址
        iconSize: [30, 30]  //图标大小[宽, 高]
    })
    //批量增加
    poi.forEach((p) => {
        L.marker([p.lat, p.lon], {icon: myicon}).addTo(map);  //将这个poi添加到地图上
    });

效果如图:
在这里插入图片描述

四、给poi添加事件弹窗

通过poi对象的bindPopup方法,可以实现点击某个poi图标时,弹出弹窗显示信息。

var poi = [
        {name: "希望小学", lon: "108.29784", lat: "22.84901", type: ""},
        {name: "蜜雪冰城", lon: "109.24071", lat: " 23.73236", type: ""},
        {name: "天猫超市", lon: "109.43442", lat: "24.33196", type: ""},
        {name: "海底捞", lon: "110.30594", lat: "25.28450", type: ""}
    ];
    //更改默认的poi图标
    const myicon = L.icon({
        iconUrl: "./icons/favicon.ico",  //图标地址
        iconSize: [30, 30]  //图标大小[宽, 高]
    })
    //批量增加
    poi.forEach((p) => {
        L.marker([p.lat, p.lon], {icon: myicon}).bindPopup('<div>' + p.name + '</div>').addTo(map);  //将这个poi添加到地图上
    });

效果如图:
在这里插入图片描述

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

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

相关文章

嵌入式Linux领域中的C++:应用层主力与挑战

嵌入式Linux领域中&#xff0c;C是应用层的主要编程语言之一。尽管QT/C在某些领域被Android/Java逐渐替代&#xff0c;但在医疗、工控、车载导航等领域仍占主导地位。对于嵌入式人员学习C的观点存在一定片面性。C的难点在于移动语义、模板偏特化、lambda表达式、模板元编程等知…

Unity实现全景图

1.前言 实现全景查看有两种方式&#xff0c;一种是创建天空盒&#xff0c;另外一种是全景图渲染到一个球形上&#xff0c;从内球内部看。两者都可以用天空盒材质Skybox实现。 2.创建天空盒材质 先创建一个材质球命名为Sky&#xff0c;在 Shader 下拉选单中&#xff0c;单击 Sk…

视觉算法知识荟萃

文章目录 视觉算法知识荟萃视觉算法八股手写卷积Delta KAbs RelRMSESilogVNLSoftMaxCrossEntropySwin-TransformerTransformerAdam&#xff0c;SGD如何修改SGD&#xff0c;使其不陷入局部最小值 NMSSoftNMS 边缘检测算法SobelLaplacianCanny Pooling Layer手写 Pooling LayerPo…

OpenGauss ustore查询过程的流程

查询流程&#xff1a; 以 Select c2 from tb1 where c1 1为例&#xff1a; 1、根据索引找到TID(1,2)的元组指针&#xff0c;即linePointer。 2、计算其事务xid是否可见&#xff0c;在Map中计算其csn和快照csn的大小关系。 3、如果大于快照CSN&#xff0c;那么不可见&#xff0…

智能仪表在铁塔行业应用 安科瑞 许敏

应用场景 可应用于基站的交直流配电箱及对基站内的动力设备进行数据采集和控制。 功能 1. 对多个回路进行全电参量测量&#xff0c;实现基站内各回路用电能耗的集中管理&#xff1b; 2. 丰富的DI/DO输入输出&#xff0c;NTC测温&#xff0c;温湿度测量等非电参量监测&#x…

​ 基于单片机智能温室大棚控制系统

功能介绍 以51单片机作为主控系统&#xff1b; DS18B20温度采集模块检测温度&#xff1b; 光敏电阻和ADC0832组成的光照检测模块&#xff1b; 土壤湿度检测模块检测土壤湿度&#xff1b; CO2检测模块检测CO2浓度&#xff1b; LCD1602显示模块显示测量值、 若温度小于温度最…

uni-data-checkbox多选框max属性无法设置为0解决方案

找到组件源码&#xff0c;搜索 setRange 方法&#xff08;改掉之后&#xff0c;组件必须添加 max属性和值&#xff01;&#xff01;&#xff01;&#xff09;

使用python将32位的bmp转成24位的

前言 一个临时需求&#xff0c;要将32位的bmp图像转成24位的 代码 使用opencv读取图片&#xff0c;然后重新存一下就可以。我看有些博主就这个内容还设置了收费&#xff0c;也不害臊。 import cv2if __name__ "__main__":img cv2.imread("IMG-0001-00001.…

MySQL数据库管理(一)

文章目录 一.数据库基本操作1.查看数据库结构1.1 查看数据库信息1.2 查看数据库中的表信息1.3 显示数据表的结构&#xff08;字段&#xff09; 2.数据库的存储方式 二.数据库管理1.DDL&#xff1a;数据定义语言1.1 创建新的数据库1.2 创建新的表1.3 删除指定的数据表1.4 删除指…

关于虚拟机kali系统忘记密码修改密码的操作

1、启动kali虚拟机&#xff0c;进入GRUB菜单&#xff0c;选中kali GNU/Linux 按e 进入编辑状态 2、在编码文档里找到linux ...root....quiet 3、在末尾添加 rw single init/bin/bash single --进入单用户模式 rw --根分区的挂载模式默认是只读&#xff08;ro&#xff09;,…

最全整理,web自动化测试框架总结-实战案例,从0精通封装...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 web自动化测试框架…

第2讲 KMD ISP子系统缩略词及目录结构

QCOM Camera子系统缩略词介绍 CPAS(Camera Peripherals and Support)CDM(Camera Data Mover)TFE(Thin Front End)IFE(Image Front End)OPE(Offline Processing Engine)BPS(Bayer Processing Segment)SFE(Sensor Front End)LRME(Low Resolution Motion Estimation)CSID(Camera …

【《快捷学习Spring》——带你步入Spring世界的快速、有趣、实用之旅!】

本书是一本学习Spring 框架的入门书籍&#xff0c;引导读者逐步上手&#xff0c;书中提供了所有必要的理论 知识&#xff0c;通过实例讨论实际应用程序的主题。本书分为两部分。第I部分是基础(1~6章)&#xff0c;学习 使用支持Spring框架的基本组件。分别讨论了真实世界里的Spr…

Js语法学习实战 -数据类型

Js语法学习实战 -数据类型 1. undefined2. null3. Boolean4. Number5. String5.1 常用方法5.2 字符串迭代遍历方法 6. Symbol类型7. Object7.1 基本使用7.2 对象遍历7.3 复制对象方法 8. 数组 - Array8.1 数组的常用方法8.2 数组遍历 9. Function JS语法学习实战系列合集 javas…

6-Spring cloud之Hystrix容错处理(上)

6-Spring cloud之Hystrix容错处理&#xff08;上&#xff09; 1. 前言1.1 关于雪崩1.1.1 什么是灾难性雪崩1.1.2 服务雪崩形成的原因1.1.3 如何防止灾难性雪崩效应 1.2 前文介绍 2. Hystrix容错处理2.1 项目搭建&#xff08;Ribbon整合Hystrix&#xff09;2.1.1 项目结构2.1.2 …

IOI车机系统刷机和改包笔记

前言 我自己21年买的雪佛兰探界者SUV&#xff0c;没想到到了23年&#xff0c;车机系统上的高德导航还是3.2版本&#xff0c;而官方的已经7.1. 中间出去玩&#xff0c;在高速上被车机上的高德坑了好多次&#xff0c;简直无力吐槽。单纯使用手机Carplay虽然也能完成导航任务&am…

2023年上半年鲁大师电动车综合分数榜解读:九号M95C荣登榜首

2023年上半年电动车综合分数榜单显示了电动车市场的最新发展趋势和品牌表现。 九号M95C获得了第一名&#xff0c;得分798分。九号M95C以其卓越的性能和创新设计脱颖而出。它的高得分主要来自于其强大的续航能力、高速性能和可靠性。九号M95C在电动单车市场中取得了非常好的口碑…

23款奔驰C260L加装原厂香氛负离子系统,清香宜人,久闻不腻

奔驰原厂香氛合理性可通过车内空气调节组件营造芳香四溢的怡人氛围。通过更换手套箱内香氛喷雾发生器所用的香水瓶&#xff0c;可轻松选择其他香氛。香氛的浓度和持续时间可调。淡雅的香氛缓缓喷出&#xff0c;并且在关闭后能够立刻散去。车内气味不会永久改变&#xff0c;香氛…

IPv6 地址简介

IP 地址是指互联网协议地址&#xff0c;它是允许设备连接到互联网的标识符。互联网协议版本 6 &#xff08;IPv6&#xff09; 地址是一个 128 位字母数字标签&#xff0c;用于标识和定位计算机网络中的网络接口卡 &#xff08;NIC&#xff09; 或网络节点。 IPv6由互联网工程任…

C# 圆盘(hsv)颜色选择器

【首先贴上github链接&#xff1a;适用于 Windows 窗体的 Cyotek 拾色器控件】 一、简单使用教程 此处是我使用Cyotek.Windows.Forms.ColorPickers库部分功能的一些经验和思路总结&#xff0c;没有太多深入地去学习&#xff0c;如果有哪位大佬有深入学习使用的话&#xff0c;可…