카메라 조정

카메라를 사용하여 사용자가 지도를 바라보는 시점을 변경할 수 있습니다. 다음과 같은 작업을 할 수 있습니다. 카메라 모드를 사용하여 탐색 중 지도뷰의 동작을 제어합니다. 카메라 모드를 설정하려면 카메라로 다음 단계를 따르세요.

  • 내 위치 팔로우 (GoogleMap.followMyLocation) - 기본 카메라 네비게이션 모드 이 모드는 카메라를 기기 또는 차량으로 설정합니다. 내비게이션 이용 중에 카메라가 자동으로 이동 방향을 향합니다. 높은 세부정보 설정이 사용 설정된 경우 (NavigationMapStyle.HIGH_DETAIL) 확대/축소 수준이 19 이상이면 2D 건물 윤곽선이 표시됩니다.

  • 위치 (GoogleMap.animateCameraGoogleMap.moveCamera)에 고정됨 — 특정 위치의 카메라를 고정합니다. 이 모드를 사용하면 방위, 기울기, 기울기, 기울기 및 기울기와 같은 다른 카메라 속성과 함께 카메라 위치를 이 뷰를 선택하고 탐색기를 초기화하면 다시 가운데 맞춤 버튼이 표시됩니다.

  • 경로 개요 표시 (NavigationView.showRouteOverview 또는 SupportNavigationFragment.showRouteOverview) — 개요를 표시합니다. 경로를 맞추기 위해 필요에 따라 화면 이동 및 확대/축소할 수 있습니다. 드래그 앤 드롭합니다. 이 뷰가 선택되면 다시 가운데 맞춤 버튼 볼 수 있습니다.

다시 가운데 맞춤 버튼을 클릭하면 카메라가 followMyLocation 모드로 설정됩니다.

내 위치 모드 팔로우

가장 일반적인 카메라 설정은 카메라를 현재 위치가 표시됩니다. 포함 이 카메라 모드를 사용하면 차량이 항상 위로 향하고 있는 경로를 볼 수 있습니다. 비스듬한 원근의 화면 (CameraPerspective.TILTED) 또는 차량이 북쪽 (CameraPerspective.TOP_DOWN_NORTH_UP)으로 이동하는 것을 확인할 수 있습니다. 또는 제목 포함 (CameraPerspective.TOP_DOWN_HEADING_UP)는 항상 화면

다음 코드 프래그먼트는 TILTED 관점을 사용합니다.

// Set the camera to follow the device (vehicle):
mNavFragment.getMapAsync(googleMap -> googleMap.followMyLocation(CameraPerspective.TILTED))

위치 모드에 고정됨

Pinned 모드를 사용하면 있습니다. 이 모드에서는 카메라를 특정 위치에 배치하여 방위를 사용하여 카메라 뷰의 방향을 조정하고, 기울기를 변경하여 시야각을 설정할 수 있습니다. 카메라의 확대/축소 수준을 설정할 수 있습니다.

다음 코드 스니펫은 있습니다.

private static final LatLng SYDNEY = new LatLng(-33.88, 151.21);
private static final LatLng MOUNTAIN_VIEW = new LatLng(37.4, -122.1);

private GoogleMap map;
... // Obtain the map from a SupportNavigationFragment or NavigationView.

// Move the camera instantly to Sydney with a zoom of 15.
map.moveCamera(CameraUpdateFactory.newLatLngZoom(SYDNEY, 15));

// Zoom in, animating the camera.
map.animateCamera(CameraUpdateFactory.zoomIn());

// Zoom out to zoom level 10, animating with a duration of 2 seconds.
map.animateCamera(CameraUpdateFactory.zoomTo(10), 2000, null);

// Construct a CameraPosition focusing on Mountain View and animate the camera to that position.
CameraPosition cameraPosition = new CameraPosition.Builder()
    .target(MOUNTAIN_VIEW)      // Sets the center of the map to Mountain View
    .zoom(17)                   // Sets the zoom
    .bearing(90)                // Sets the orientation of the camera to east
    .tilt(30)                   // Sets the tilt of the camera to 30 degrees
    .build();                   // Creates a CameraPosition from the builder
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));

경로 개요 모드 표시

showRouteOverview 카메라 설정은 전체 여정을 표시합니다. 여러 목적지가 있는 여정의 경우 이 모드는 이동하지 않은 있습니다.

// Place the camera to see the remaining route:
mNavFragment.showRouteOverview();

상세 설정

높은 세부정보 설정을 사용 설정하면 2D 건물 윤곽선이 표시됩니다. 카메라의 확대/축소 수준이 19 이상으로 설정된 경우 여기에서 FollowMyLocationOptions 객체를 사용하여 탐색 중에 확대/축소 수준을 설정합니다. 이 2D 건물 윤곽선을 표시할 수 있을 만큼 확대/축소 수준을 사용자가 목적지에 접근합니다.

이 예에서는 다음과 같은 세부정보 설정을 사용 설정합니다.

  navigationView.setNavigationMapStyle(NavigationMapStyle.HIGH_DETAIL);

다음 예에서는 탐색 중에 카메라의 확대/축소 수준을 재정의합니다. 확대/축소 수준이 15로 설정되어 있으며, 2D 건물을 표시하기에 충분한 수준입니다. 있습니다.

  googleMap.followMyLocation(
              FollowMyLocationOptions.builder(CameraPerspective.TILTED)
                      .setZoomLevel(15.0f)
                      .build());

다음 단계

탐색 UI 맞춤설정을 참고하세요. 사용자가 지도와 상호작용하는 방식을 맞춤설정하는 방법을 알아보세요. 지도에 표시할 기본 제공 UI 구성요소를 결정합니다.