我的地图视图包含许多精确点。当用户进行该活动时,地图应该放大到这样的水平,正确的3品脱是可见的。地图不应该或多或少地缩放它应该正好是三。我知道通过代码,地图的缩放级别可以在0到21之间变化。但是有没有办法设置缩放级别,这样在两种情况下都可以看到精确的3个引脚,如果引脚远或接近正确3应该是可见吗?API中是否有任何功能可以设置?
答案 0 :(得分:2)
点数是您希望在地图上显示的所有地理位置。
private void Zoom() {
int minLatitude = Integer.MAX_VALUE;
int maxLatitude = Integer.MIN_VALUE;
int minLongitude = Integer.MAX_VALUE;
int maxLongitude = Integer.MIN_VALUE;
for (GeoPoint p : points) {
int lati = p.getLatitudeE6();
int lon = p.getLongitudeE6();
maxLatitude = Math.max(lati, maxLatitude);
minLatitude = Math.min(lati, minLatitude);
maxLongitude = Math.max(lon, maxLongitude);
minLongitude = Math.min(lon, minLongitude);
}
mapController.zoomToSpan(Math.abs(maxLatitude - minLatitude),
Math.abs(maxLongitude - minLongitude));
mapController.animateTo(new GeoPoint((maxLatitude + minLatitude) / 2,
(maxLongitude + minLongitude) / 2));
}