您可以向 3D 地图添加摄像头路径动画,为用户提供更具沉浸感的体验。摄像头路径动画可以飞向地图上的某个点或围绕该点飞行。
前往
以下代码示例演示了如何通过调用 flyCameraTo
方法,让相机以动画效果飞到 3D 地图上的特定点。如需使用此代码示例,请按照设置和向应用添加 3D 地图中的说明,使用基本 3D 地图设置 Android Studio 项目。然后,将以下代码添加到 MainActivity.kt
文件中:
// 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 } )
四处飞行
以下代码示例演示了如何通过调用 flyCameraAround
方法,让相机以动画形式围绕 3D 地图上的特定点飞行。如需使用此代码示例,请按照设置和向应用添加 3D 地图中的说明,使用基本 3D 地图设置 Android Studio 项目。然后,将以下代码添加到 MainActivity.kt
文件中:
// 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 } )