Kullanıcılarınıza daha sürükleyici bir deneyim sunmak için 3D haritanıza kamera yolu animasyonları ekleyebilirsiniz. Kamera yolu animasyonları, kamerayı haritada bir noktaya doğru uçurabilir, etrafında uçurabilir veya birleştirerek animasyon oluşturabilir. Bu animasyonlarda kameranın yüksekliği de belirtilebilir.
Git
Aşağıdaki kod örneğinde, flyCameraTo yöntemini çağırarak kameranın 3D haritada belirli bir noktaya uçacak şekilde nasıl animasyonlandırılacağı gösterilmektedir.
// 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
}
)
Uçarak dolaşma
Aşağıdaki kod örneğinde, flyCameraAround yöntemini çağırarak kamerayı 3D haritadaki belirli bir nokta etrafında uçacak şekilde nasıl canlandıracağınız gösterilmektedir.
// 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
}
)