在地图中显示临近景点

昨天已经可以在页面中列出临近的景点及其相隔距离。

今天把这些景点及其距离在百度地图中标注出来。

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的背景,需要使用绝对路径,这个就比较纠结了。

转载于:https://www.cnblogs.com/elaron/archive/2012/10/26/2740865.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值