Sie können Ihrer 3D-Karte Animationen für den Kamerapfad hinzufügen, um Nutzern ein noch intensiveres Erlebnis zu bieten. Mit Animationen für den Kamerapfad kann die Kamera zu einem Punkt auf der Karte geflogen werden, um ihn herumfliegen oder beides kombiniert werden. Dabei kann auch die Höhe angegeben werden.
Anfliegen
Im folgenden Codebeispiel wird gezeigt, wie die Kamera animiert wird, um zu einem bestimmten Punkt auf einer 3D-Karte zu fliegen. Dazu wird die Methode flyCameraTo aufgerufen.
// Add imports and define constants
import com.google.android.gms.maps3d.model.latLngAltitude
const val EMPIRE_STATE_BUILDING_LATITUDE = 40.748233
const val EMPIRE_STATE_BUILDING_LONGITUDE = -73.985663
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.flyCameraTo(
flyToOptions {
endCamera = camera {
center = latLngAltitude {
latitude = EMPIRE_STATE_BUILDING_LATITUDE
longitude = EMPIRE_STATE_BUILDING_LONGITUDE
altitude = 212.0 // in meters
}
heading = 34.0 // bearing in degrees
tilt = 67.0 // relative to vertical
range = 750.0 // distance away from the focal point in meters
roll = 0.0 // roll relative to horizontal
}
durationInMillis = 2_000
}
)
Umherfliegen
Im folgenden Codebeispiel wird gezeigt, wie die Kamera animiert wird, um einen bestimmten Punkt auf einer 3D-Karte zu umkreisen. Dazu wird die Methode flyCameraAround aufgerufen.
// Add imports and define constants
import com.google.android.gms.maps3d.model.latLngAltitude
const val EMPIRE_STATE_BUILDING_LATITUDE = 40.748233
const val EMPIRE_STATE_BUILDING_LONGITUDE = -73.985663
...
// Add to the onMap3DViewReady method, after the googleMap3D object has been initialized
googleMap3D.flyCameraAround(
flyAroundOptions {
center = camera {
center = latLngAltitude {
latitude = EMPIRE_STATE_BUILDING_LATITUDE
longitude = EMPIRE_STATE_BUILDING_LONGITUDE
altitude = 212.0
}
heading = 34.0
tilt = 67.0
range = 750.0
roll = 0.0
}
durationInMillis = 5_000
rounds = 1.0 // Number of rotations - can be fractional
}
)