百度地图之自定义覆盖物(Overlay)

     百度地图提供了默认的Marker作为默认的点标记,或者叫图像标注。除了位置,还支持设置图像Icon,来达到自定义效果。但这个显然比较有限,我们需要更加负责的覆盖物(Overlay)来展示点要素。

本文提供了一种自定义覆盖物,命名为ClusterMarker,类似是一种较为复杂的标记。它除了支持常规的位置(Point),还可以设置文字(Text)和风格(Style),而在Text和Style之间会有一定的映射关系,不同的Text对应不同的Style。而映射关系的接口,同样予以开放,可自行设置。

 构造函数:

     ClusterMarker(point, text, opt_options):point表示位置信息;text表示文字信息;可选参数opt_options是个对象,形如{styles:myStyles,bounds:myBounds},其中styles可以设置自定义风格,如果不设置,则用默认风格(默认更个的图片取自这里);bounds是为了后面的ClusterMarkerer而设置的,比如这假设是几个点的一个聚合时,它可以表示这几个点的范围bounds。

方法接口:

    getPoint() 和 setPoint(point) 用来获取和设置显示的位置。

    getText()  和 setText(text) 用来获取和设置显示的文字。

    getBounds() 和 setBounds(bounds) 用来获取和设置聚合点的范围,如果有的话。

    getCalculator() 和 setCalculator(calculator) 用来获取和设置文字与风格之间映射关系。默认的映射关系是,把文字转换为数字,对10取整,作为对应的风格图片索引。比如text为9,对应index为0的风格;24则对应index为2的风格。

    支持通过addEventListener方法添加click事件的响应。

    关于ClusterMarker命名,首先体现是一种类似Marker的点标记,Cluster的意思主要是积聚,比如Text可以表示,该Point附近积聚了Text个标记等。其实,这是做百度地图版的MarkerCluster的中间产物。代码将会包含在下一篇文章“ClusterMarkerer百度地图版”中。

演示地址:简单示例   复杂示例(设置不同风格)

2011031413242758.png

     怎么找源码,你懂的。原文链接

转载于:https://www.cnblogs.com/LionGG/archive/2011/03/14/baidumap_clustermarker.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值