Configurare i controlli della videocamera

Seleziona la piattaforma: Android iOS JavaScript

Gli utenti possono controllare lo zoom, l'inclinazione, la posizione e la rotazione della videocamera utilizzando i gesti sulla mappa. Puoi anche configurare la videocamera in modo programmatico.

Diagramma che illustra il modello di videocamera 3D

Posizione della videocamera

La visualizzazione della mappa è modellata come una videocamera che guarda un punto specifico in uno spazio 3D. La posizione e l'orientamento della videocamera (e quindi il rendering della mappa) sono specificati dalle seguenti proprietà: centro (una posizione di latitudine/longitudine/altitudine verso cui è rivolta la videocamera), orientamento, inclinazione, raggio e rollio.

Centro (latitudine/longitudine/altitudine)

Il centro definisce il punto specifico nello spazio 3D che la videocamera sta osservando. Questo valore viene specificato utilizzando la classe LatLngAltitude, che combina i valori di latitudine, longitudine e altitudine. Ciò consente un posizionamento preciso del punto focale della videocamera in tre dimensioni.

La latitudine può essere compresa tra -90 e 90 gradi inclusi. La longitudine varia tra -180 e 180 gradi inclusi. L'altitudine è specificata in metri sopra il livello del mare.

Intestazione

L'orientamento della videocamera specifica la direzione in cui punterà la videocamera, misurata in gradi in senso orario rispetto al nord geografico. Il nord corrisponde a 0 gradi, l'est a 90 gradi, il sud a 180 gradi e l'ovest a 270 gradi. Determina l'orientamento della videocamera intorno all'asse verticale del punto centrale.

Inclinazione

L'inclinazione specifica l'angolo della videocamera rispetto all'asse verticale, misurato in gradi. Un'inclinazione di 0 gradi indica che la fotocamera è puntata verso il basso, verso la Terra (nadir). Un'inclinazione di 90 gradi indica che la videocamera è puntata orizzontalmente nella direzione specificata dalla direzione.

Intervallo

L'intervallo definisce la distanza in metri tra la posizione della videocamera e il punto centrale che sta guardando. L'intervallo può variare da zero metri (primo piano) fino a 63 milioni di metri, consentendo viste da molto vicino fino a una prospettiva veramente globale. In questo modo, puoi controllare in modo efficace il livello di zoom della mappa.

Rotazione

Il rollio imposta l'angolo della videocamera rispetto all'orizzonte, misurato in gradi. Questo parametro può essere utilizzato per creare effetti come l'inclinazione durante le simulazioni di volo o persino una rotazione completa, ruotando la videocamera attorno al suo asse di visualizzazione.

Controllare la videocamera

Il seguente esempio di codice mostra come controllare la videocamera in modo programmatico chiamando il metodo setCamera. Per utilizzare questo esempio di codice, segui le istruzioni riportate in Configurazione e Aggiungere una mappa 3D all'app per configurare il progetto Android Studio con una mappa 3D di base. Poi, aggiungi il seguente codice al file 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
    }
)