从 Google Maps Android API v2 中,我了解到这可以通过以下方法完成:
LatLngBounds.Builder builder = new LatLngBounds.Builder();
for (Location loc : allLocations) {
LatLng position = new LatLng(loc.getLatitude(), loc.getLongitude());
builder.include(position);
}
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(builder.build(), someMarginValue);
map.moveCamera(cu);
但是我似乎找不到为 OSMDroid 执行此操作的方法。是否有解决方案/类可以帮助根据一组位置确定缩放级别?
最佳答案
这对我来说效果很好:
ArrayList<GeoPoint> waypoints = new ArrayList<GeoPoint>();
waypoints.add(new GeoPoint(35.37, -119.01));
waypoints.add(new GeoPoint(35.35, -119.01));
waypoints.add(new GeoPoint(35.11, -118.32));
waypoints.add(new GeoPoint(35.10, -118.32));
waypoints.add(new GeoPoint(35.10, -118.15));
waypoints.add(new GeoPoint(35.09, -118.14));
waypoints.add(new GeoPoint(35.63, -117.88));
waypoints.add(new GeoPoint(35.65, -117.72));
waypoints.add(new GeoPoint(35.62, -117.67));
final BoundingBoxE6 boundingBoxE6 = BoundingBoxE6.fromGeoPoints(waypoints);
mMapView.zoomToBoundingBox(boundingBoxE6,true);
关于android - 根据 OSMDroid 的一组位置确定合适的缩放级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14629445/