我需要帮助,以便在Android的Titanium地图中显示正确的缩放级别。

我正在显示从当前位置到其他位置的路线。每次的距离都不同。是否可以根据距离计算latitudeDelta和longitudeDelta的值,并显示据此放大的地图?如果是,那怎么可能?

提前致谢!

最佳答案

如文档所述,增量值越小,地图上的缩放越近。也就是说,与增量(纬度,经度)的0.1相比,0.01的缩放比例更大。由于这些值是在region参数中进行硬编码的,因此我建议使用基于距离动态填充latitudeDelta:&longitudeDelta:的函数。因此,如果距离较大,则可以为delta的值较高,否则为较小的值。

这是一个这样的功能:

function distanceToZoom( r ){
    var w = myMapInstance.getSize().width;
    var d = r * 2;
    var distance = [you can put distances in this array];
    var z = 20, m;
    while( distance[--z] ){
        m = distance[z] * w;
        if( d < m ){
            break;
        }
    }
    return z;
}


对应的增量值:

delta distance in miles (Supposedly)
0.0001  10
 0.001  100
  0.01  1000
   0.1  10000
   1    10000


希望这可以帮助!!

09-20 13:50