Mapbox Android:缩放特定路线

时间:2018-12-04 00:52:10

标签: android mapbox

我想将计算出的导航路线居中到地图视图的给定布局中。我尝试用边界来做到这一点,但是路线并不居中。到目前为止,还有其他方法吗?

private fun animateCamera(){
        val bounds = LatLngBounds.Builder()
                .include(LatLng(originPoint.latitude(), originPoint.longitude())) // Northeast
                .include(LatLng(destinationPoint.latitude(), destinationPoint.longitude())) // Southwest
                .build()
        map.easeCamera(CameraUpdateFactory.newLatLngBounds(bounds, 100), 5000)
}

Map Image

1 个答案:

答案 0 :(得分:0)

我认为这里最好的选择是MapboxMap#getCameraForLatLngBounds(LatLngBounds latLngBounds, int[] padding)。此方法知道地图的当前状态,从而提供更准确的CameraPosition。因此,使用您的代码:

private fun animateCamera() {
  val bounds = LatLngBounds.Builder()
            .include(LatLng(originPoint.latitude(), originPoint.longitude())) // Northeast
            .include(LatLng(destinationPoint.latitude(), destinationPoint.longitude())) // Southwest
            .build()

  // zero padding
  val cameraPosition = map.getCameraForLatLngBounds(bounds, intArrayOf(0, 0, 0, 0))
  mapboxMap.easeCamera(CameraUpdateFactory.newCameraPosition(cameraPosition), 5000)
}

希望这会有所帮助!感谢您检出Mapbox