Cómo ajustar la cámara

La cámara te permite cambiar el punto de vista del usuario del mapa. Puedes usar los modos de cámara para controlar el comportamiento de la vista de mapa durante la navegación. Para configurar el modo de cámara, llama a uno de los siguientes métodos asociados con la cámara:

  • Seguir mi ubicación (GoogleMap.followMyLocation): Es el modo de cámara predeterminado para la navegación. Este modo configura la cámara en el dispositivo o el vehículo. Durante la navegación, la cámara mira automáticamente en la dirección del viaje.

  • Fijada a la ubicación (GoogleMap.animateCamera y GoogleMap.moveCamera): Fija la cámara en una ubicación específica. Cuando usas este modo, puedes configurar la ubicación de la cámara junto con otras propiedades de la cámara, como la orientación, la inclinación, el zoom, etcétera. Cuando se selecciona esta vista y se inicializa el navegador, se muestra el botón Volver al centro.

  • Mostrar descripción general de la ruta (NavigationView.showRouteOverview o SupportNavigationFragment.showRouteOverview): Muestra una descripción general de la ruta restante (hasta los próximos 45 minutos de tiempo de conducción), con desplazamiento y zoom según sea necesario para ajustar la ruta en la vista de mapa. Cuando se selecciona esta vista, se muestra el botón Volver al centro.

Si haces clic en el botón Volver al centro , la cámara se configura en el modo followMyLocation.

Modo Seguir mi ubicación

La configuración de cámara más común es que la cámara esté configurada en el dispositivo o el vehículo, y que muestre su posición actual durante el viaje. En este modo de cámara, puedes ver la ruta con el automóvil siempre orientado hacia la parte superior de la pantalla con una perspectiva inclinada (CameraPerspective.TILTED) o puedes ver el automóvil que viaja con el norte (CameraPerspective.TOP_DOWN_NORTH_UP) o con la orientación (CameraPerspective.TOP_DOWN_HEADING_UP)) siempre en la parte superior de la pantalla.

En el siguiente fragmento de código, se usa la perspectiva TILTED:

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

Modo Fijada a la ubicación

El modo Pinned te brinda el mayor control de la cámara. En este modo, colocas la cámara en una ubicación específica, asignas una orientación para orientar la vista de la cámara, cambias la inclinación para configurar el ángulo de visión y estableces el nivel de zoom de la cámara.

En el siguiente fragmento de código, se muestran algunas de las formas comunes de mover la cámara.

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

Modo Mostrar descripción general de la ruta

El parámetro de configuración de la cámara showRouteOverview muestra todo el viaje. Para los viajes con varios destinos, este modo muestra la parte de la ruta que no se recorrió.

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

Próximo paso

Consulta Personaliza la IU de Navigation para obtener información sobre cómo personalizar la manera en que los usuarios interactúan con tu mapa. Para ello, debes determinar los componentes integrados de la IU que aparecerán en el mapa.