2

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);

However I can't seem to find a way to do this for OSMDroid. Is there a solution/ class to help determine the zoom level based on a set of locations?

4

3 に答える 3

0

osmdroid では、位置のセットから最小/最大座標を決定してから呼び出すことができます

 Mapview.zoomToBoundingBox(...)

ズームレベルを設定します。

于 2015-07-23T07:30:52.197 に答える
0

これは私にとってはうまくいきます:

    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);
于 2016-03-10T06:13:01.263 に答える