计算钛地图中的latitudeDelta和longitudeDelta [Android]

时间:2015-03-09 04:05:37

标签: javascript android google-maps titanium titanium-mobile

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

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

提前致谢!

1 个答案:

答案 0 :(得分:2)

由于文档声明增量值越小,地图上的缩放越接近。这意味着0.01将放大更多,相比之下,delta(纬度,经度)为0.1。由于这些值在regions参数中是硬编码的,我建议使用一个动态填充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值:

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

希望这有助于!!