Android地图V2米到四像素在新地图中的位置/等效物是什么?

Android地图V2米到四像素在新地图中的位置/等效物是什么?,android,maps,android-maps-v2,projection,Android,Maps,Android Maps V2,Projection,Android Maps在地图的投影上有一个很好的小方法,MetersToEquatorPixels可以让你在赤道上的像素和米之间转换,然后将结果快速乘以*(1/Math.cos(Math.toRadians(latitudeofmap))可以告诉你有多少像素代表该纬度的等效像素 地图V2中的等价物是什么?如果我想说,画一个图例,显示距离,我必须知道每个像素在lat/lon距离中代表多少距离,而且由于这种方法现在已经不存在了,我不知道如何才能得到这个……那么V2中的等价物是什么?也许它可以帮助您

Android Maps在地图的投影上有一个很好的小方法,MetersToEquatorPixels可以让你在赤道上的像素和米之间转换,然后将结果快速乘以*(1/Math.cos(Math.toRadians(latitudeofmap))可以告诉你有多少像素代表该纬度的等效像素


地图V2中的等价物是什么?如果我想说,画一个图例,显示距离,我必须知道每个像素在lat/lon距离中代表多少距离,而且由于这种方法现在已经不存在了,我不知道如何才能得到这个……那么V2中的等价物是什么?

也许它可以帮助您:我从以下方面获取它:


你找到这个问题的答案了吗?我没有,我必须自己写一些数学题才能得到相应的答案,我面前没有代码,但今晚会尝试查找。如果你能把它作为一个答案发布,这样其他人可以从中受益,那就太好了。我会加上1:)非常感谢你…偏移量是多少?欢迎你…我不太清楚。但我认为它涵盖了错误!为了更准确…那么基线呢?你能更正一下坐标吗?
public static int metersToEquatorPixels(GoogleMap map, LatLng base, float meters) {
final double OFFSET_LON = 0.5d;

Location baseLoc = new Location("");
baseLoc.setLatitude(base.latitude);
baseLoc.setLongitude(base.longitude);

Location dest = new Location("");
dest.setLatitude(base.latitude);
dest.setLongitude(base.longitude + OFFSET_LON);

double degPerMeter = OFFSET_LON / baseLoc.distanceTo(dest); // 1m は何度?
double lonDistance = meters * degPerMeter; // m を度に変換

Projection proj = map.getProjection();
Point basePt = proj.toScreenLocation(base);
Point destPt = proj.toScreenLocation(new LatLng(base.latitude, base.longitude + lonDistance));

return Math.abs(destPt.x - basePt.x);
 }