在地图中显示临近景点
昨天已经可以在页面中列出临近的景点及其相隔距离。
今天把这些景点及其距离在百度地图中标注出来。
1、百度Maker和Label覆盖物
“Marker:标注表示地图上的点,可自定义标注的图标。
Label:表示地图上的文本标注,您可以自定义标注的文本内容。"
根据百度API文档中的描述,选择Maker作为当前位置的标注,Label作为周围景点的标注(因为可以定义文本的内容,因此可以讲距离写到label上)
Marker的用法:
var map = new BMap.Map("position"); var point = new BMap.Point(${currentLocation.longitude}, ${currentLocation.latitude}); map.centerAndZoom(point, 19); var marker = new BMap.Marker(point); map.addOverlay(marker);
Label的用法:
var map = new BMap.Map("container"); var point = new BMap.Point(108.977055,34.217921); map.centerAndZoom(point, 17); var label1 = new BMap.Label("50m"); label1.setPosition(new BMap.Point(108.977055,34.217921)); label1.setOffset(new BMap.Size(-100,-20)); label1.setStyle({ backgroundColor:"#003366", color:"white" }); map.addOverlay(label1);
2、编写用于在地图上显示的结构体
要在地图上标示出临近的景点及其距离,需要知道三个参数:经度、维度、距离。
工程中虽然有String、String、int的结构体组合,但是是用在别处的,因此为了业务清晰,要定义一个结构体,如下:
3、理清展现层的链接关系
4、编写jsp页面和相应的servlet
在jsp里面用EL表达式给js赋值,编译器还是依旧报错但可以运行。
5、结果
后记:
如果用图片做label的背景,需要使用绝对路径,这个就比较纠结了。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构