javascript - 根据传单中的缩放级别调整自定义标记图标大小的最佳方法是什么?
问题描述
我需要根据传单中的缩放级别调整一些自定义标记的大小。'zoomend' 功能仅适用于 Circles。
map.on('zoomend', function() {
)
var currentZoom = map.getZoom();
myMarker.setRadius(currentZoom );
});
解决方案
解决方案:
var myIcon= L.Icon.extend({
options: {
iconUrl: 'icon.png',
iconSize: [7.5, 7.5],
iconAnchor: [0, 0]
}
});
var ic = new myIcon({iconSize: [7.5, 7.5]});
var marker = L.marker([-15.7745457, -48.3575684], {icon: ic}).addTo(map);
map.on('zoomend', function() {
var actualZoom = map.getZoom();
var newSize = 60/((20 - actualZoom )*2);
var resizedIcon = new myIcon({iconSize: [newSize ,newSize ]});
marker.setIcon(resizedIcon );
});
推荐阅读
- purescript - 具有和不具有类型类约束的 Eq 实例
- r - PCA 中的错误(表,quanti.sup =,graph = FALSE):以下变量不是定量的
- angular - 如何使用 Angular Material 订阅单选按钮组的 valueChange
- android - Android:使用 BottomNavigationView、NavController 和 SafeArgs 恢复片段
- php - 升级 php 版本后缺少 MySQL PHP 扩展
- google-maps - Google Places API“findplacefromtext”不会根据输入返回位置
- azure-devops - 在构建时将包添加到 dotnet 核心项目 Azure Pipelines
- php - Laravel 数组不同的验证
- git - 来自 bash 脚本和终端的 git checkout 行为不同
- selenium - 如果我从命令行运行可运行的 .jar 文件,则会显示错误消息“FileNotFoundException”