0
我的地圖視圖包含許多精確點。當用戶進行該活動時,地圖應該放大到這樣的水平,正確的3品脫可見。地圖不應該放大或多或少,它應該是三個。我知道縮放地圖的水平可以通過代碼在0到21之間變化。但是有沒有什麼辦法可以設置縮放水平,使得在兩種情況下都可以看到確切的3個針腳,如果針腳遠或接近正確3應該是可見的?API中是否有任何功能來設置?如何設置地圖視圖的縮放級別,使三個針腳可見?
我的地圖視圖包含許多精確點。當用戶進行該活動時,地圖應該放大到這樣的水平,正確的3品脫可見。地圖不應該放大或多或少,它應該是三個。我知道縮放地圖的水平可以通過代碼在0到21之間變化。但是有沒有什麼辦法可以設置縮放水平,使得在兩種情況下都可以看到確切的3個針腳,如果針腳遠或接近正確3應該是可見的?API中是否有任何功能來設置?如何設置地圖視圖的縮放級別,使三個針腳可見?
點數是您希望在地圖上可見的所有地點。
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));
}