Configurer les commandes de la caméra

Sélectionnez une plate-forme : Android iOS JavaScript

Les utilisateurs peuvent contrôler le zoom, l'inclinaison, la position et la rotation de la caméra à l'aide de gestes sur la carte. Vous pouvez également configurer la caméra par programmation.

Diagramme illustrant le modèle de caméra 3D

Position de la caméra

La vue de la carte est modélisée comme une caméra orientée vers un point spécifique dans l'espace. La position et l'orientation de la caméra sont définies par des coordonnées de latitude/longitude/altitude (définies comme le "centre", où la caméra est pointée), le cap, l'inclinaison, la distance et le roulis.

Centre (latitude, longitude, altitude)

Le centre définit le point spécifique dans l'espace 3D que la caméra observe. Cette valeur est spécifiée à l'aide de la classe LatLngAltitude, qui combine les valeurs de latitude, de longitude et d'altitude. Cela permet de positionner précisément le point focal de la caméra en trois dimensions.

La latitude peut être comprise entre -90 et 90 degrés, inclus. La longitude est comprise entre -180 et 180 degrés, inclus. L'altitude est spécifiée en mètres au-dessus du niveau de la mer.

Titre

L'orientation indique la direction de la boussole de la carte, mesurée en degrés dans le sens horaire à partir du nord géographique. Le nord correspond à 0 degré, l'est à 90 degrés, le sud à 180 degrés et l'ouest à 270 degrés.

Inclinaison

L'inclinaison spécifie l'angle de la caméra par rapport à l'axe vertical, mesuré en degrés. Une inclinaison de 0 degré signifie que la caméra pointe directement vers le bas, en direction de la Terre (nadir). Une inclinaison de 90 degrés signifie que la caméra est orientée horizontalement dans la direction spécifiée par l'orientation.

Plage

La plage définit la distance en mètres entre la position de la caméra et le centre de la carte. La plage peut varier de zéro mètre (très près) à soixante-trois millions de mètres, ce qui permet d'obtenir des vues très rapprochées jusqu'à une perspective véritablement globale. Cela permet de contrôler le niveau de zoom de la carte.

Roulis

Le roulis définit l'angle de la caméra par rapport à l'horizon, mesuré en degrés. Ce paramètre peut être utilisé pour créer des effets tels que l'inclinaison lors de simulations de vol ou même un tonneau complet, en faisant pivoter la caméra autour de son axe de vision.

Contrôler la caméra

L'exemple de code suivant montre comment contrôler la caméra de manière programmatique en appelant la méthode setCamera. Pour utiliser cet exemple de code, suivez les instructions de Configuration et Ajouter une carte 3D à votre application pour configurer votre projet Android Studio avec une carte 3D de base. Ajoutez ensuite le code suivant au fichier MainActivity.kt :


// Add imports
import com.google.android.gms.maps3d.model.latLngAltitude

...

// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.setCamera(
    camera {
        center = latLngAltitude {
            latitude = 38.743502
            longitude = -109.499374
            altitude = 1467.0
        }
        heading = 350.0
        tilt = 58.1
        range = 138.2
        roll = 0.0
    }
)