我正在获取谷歌路线并在V2地图视图上显示它们。因此,生成的地图显示了起点、终点以及它们之间的路线。我将它们添加到地图中,如下所示:
LatLngBounds bounds = builder.build();
CameraUpdate cu = CameraUpdateFactory.newLatLngBounds(bounds, padding);
mapView.animateCamera(cu);
我现在希望旋转地图,以便起点和终点位于同一水平面上。地图每次显示不同的路线,所以我需要逻辑来计算旋转需要多少度,以及代码在指定的边界内实际旋转地图,如上面的代码所示。我正在努力寻找一种方法来做到这一点。
试试这个,我前段时间实现了。(如果您不想拥有倾斜效果) - 只需将其设置为零)
targetBearing = destinationLocation.bearingTo(myCurrentLocation);
CameraPosition cameraPosition = new CameraPosition.Builder()
.target(new LatLng(latitudeCurrentLocation,
longitudeCurrentLocation)).bearing(targetBearing + 530)
.tilt(67).zoom(15).build();
map.animateCamera(
CameraUpdateFactory.newCameraPosition(cameraPosition), 5000,
null);
编辑:bearing(targetBearing + 530)
这以度为单位进行旋转。