【发布时间】:2013-08-15 11:53:01
【问题描述】:
我正在使用这两个函数将 latlng 转换为图块坐标。我无法理解的是,如果在缩放级别 1 有 4 个图块。那么这些坐标属于哪些图块呢?还是这些属于左上角?
public int langtoTileX(Double lng,int zoom)
{
double x;
x = Math.round((256*(Math.pow(2,zoom-1)))+(lng*((256*(Math.pow(2,zoom)))/360)));
return ((int)(x/256));
}
public int lattoTileY(Double lat,int zoom)
{
Double exp = Math.sin(lat*Math.PI/180);
if (exp < -.9999)
exp = -.9999;
if (exp > .9999)
exp = .9999 ;
return (int) (Math.round (256*(Math.pow(2,zoom-1)))+((.5*Math.log((1+exp)/(1-exp)))*((-256*(Math.pow(2,zoom)))/(2*Math.PI))))/256;
}
本例中使用了相同类型的公式:
https://developers.google.com/maps/documentation/javascript/examples/map-coordinates
【问题讨论】:
标签: android google-maps google-maps-android-api-2