我正在尝试计算用户放大或缩小时的缩放级别,
我发现React本机地图具有onRegionChange,该字段具有经度,纬度,经度增量和纬度增量(我想)可能是用于计算缩放级别
从这个response中我尝试过这种方式:
Math.round(Math.log(360 / this.state.longitudeDelta) / Math.LN2);
但它返回一个很大的数字(不是缩放级别)。
答案 0 :(得分:1)
在react-native-map的onRegionChangeComplete
属性中编写如下函数
changeRegion = debounce(async region => {
console.log(
Math.log2(360 * (metrics.screenWidth / 256 / region.longitudeDelta)) + 1
);
}, 1000);
或者具体地说,Math.log2(360 * (metrics.screenWidth / 256 / region.longitudeDelta)) + 1);
发挥了魔力。
答案 1 :(得分:0)
log2(360 * ((screenWidth/256) / region.longitudeDelta)) + 1