Anda dapat menambahkan animasi jalur kamera ke peta 3D untuk memberikan pengalaman yang lebih imersif bagi pengguna. Animasi jalur kamera dapat terbang ke, terbang di sekitar, atau digabungkan untuk menganimasikan
Camera
ke titik di peta, termasuk menentukan
ketinggian
dan
altitudeMode.
Saat mengonfigurasi
Camera
untuk animasi, Anda dapat menetapkan properti
altitudeMode (atau memanggil
setAltitudeMode)
untuk menentukan cara penafsiran ketinggian kamera:
AltitudeMode.ABSOLUTE: Menafsirkan ketinggian sebagai meter di atas permukaan laut rata-rata (nilai default jika tidak ditentukan).AltitudeMode.RELATIVE_TO_GROUND: Menafsirkan ketinggian sebagai meter di atas permukaan tanah di titik tengah kamera.AltitudeMode.RELATIVE_TO_MESH: Menafsirkan ketinggian sebagai meter di atas permukaan mesh 3D tertinggi (seperti bangunan atau pohon) di titik tengah kamera.
Terbang ke
Contoh kode berikut menunjukkan cara menganimasikan
Camera
untuk terbang ke titik tertentu di peta 3D dengan memanggil metode
flyCameraTo
di
GoogleMap3D
dengan konfigurasi
FlyToOptions.
// Add imports and define constants
import com.google.android.gms.maps3d.model.AltitudeMode
import com.google.android.gms.maps3d.model.FlyToOptions
import com.google.android.gms.maps3d.model.FlyAroundOptions
import com.google.android.gms.maps3d.model.Camera
import com.google.android.gms.maps3d.model.Map3DMode
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.setMapMode(Map3DMode.HYBRID)
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
altitudeMode = AltitudeMode.RELATIVE_TO_GROUND
}
durationInMillis = 2000
}
)
Terbang di sekitar
Contoh kode berikut menunjukkan cara menganimasikan
Camera
untuk terbang di sekitar titik tertentu di peta 3D dengan memanggil metode
flyCameraAround
di
GoogleMap3D
dengan konfigurasi
FlyAroundOptions.
// Add imports and define constants
import com.google.android.gms.maps3d.model.AltitudeMode
import com.google.android.gms.maps3d.model.Map3DMode
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.setMapMode(Map3DMode.HYBRID)
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
altitudeMode = AltitudeMode.RELATIVE_TO_GROUND
}
durationInMillis = 5000
rounds = 1.0 // Number of rotations - can be fractional
}
)