【发布时间】:2012-03-28 23:50:28
【问题描述】:
我有一个使用 OSMDroid 显示地图的 Android 应用程序。
我想在屏幕上而不是在瓷砖上获得GeoPoint 的投影像素。
考虑以下代码:
Projection projection = getProjection();
GeoPoint geoPoint1 = (GeoPoint)projection.fromPixels(0, 0);
Point pixelsPoint = new Point();
projection.toPixels(geoPoint1, pixelsPoint);
GeoPoint geoPoint2 = (GeoPoint)projection.fromPixels(pixelsPoint.x, pixelsPoint.y);
我希望 geoPoint1 等于 geoPoint2。相反,我得到了 2 个完全不同的“GeoPoint”。
在我看来,问题出在这一行:
projection.toPixels(geoPoint1, pixelsPoint);
out 变量 pixelsPoint 填充的值远高于屏幕尺寸(x 和 y 为 10,000+),我怀疑这是图块上的像素,而不是屏幕像素。
如何从GeoPoint 来回获取屏幕像素?
【问题讨论】:
标签: android google-maps map osmdroid