高德地图web api更改marker大小

工作中,需要根据地图的缩放,更改marker的大小。比如,地图越缩小,marker必须变小,以防重叠到一堆。

搜索了很多文章,都没有提高如何修改marker大小的。后面在高德api文档里发现了秘籍:

或者向已创建好的 Marker 添加 Icon:marker.setIcon(icon);

于是我通过以下方式重置了marker:

const newIcon = new AMap.Icon({
  size: new AMap.Size(52, 26), // 图标尺寸
  image: !marker.vehicle.idle ? iconCar : iconCarGray, // Icon的图像
  imageSize: iconMeta.size, // 根据所设置的大小拉伸或压缩图片
})
marker.setIcon(newIcon)

实现了我的目标。

核心API :

marker.setIcon(icon)

image.png

增加:

当marker缩小后,对应的offset还是原来的,这个时候marker会向左上偏移更多,所以,此时还应该调用marker.setOffset()方法重置offset。

marker API

综上,有问题找API文档。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容