אתם יכולים להוסיף אנימציות של נתיבי מצלמה למפה התלת-ממדית כדי לספק למשתמשים חוויה עשירה יותר. אנימציות של נתיב המצלמה יכולות להתקרב לנקודה במפה או להקיף אותה.
מעבר בטיסה אל
בדוגמת הקוד הבאה אפשר לראות איך מפעילים את השיטה flyCameraTo כדי להנפיש את המצלמה כך שתעבור לנקודה ספציפית במפה תלת-ממדית. כדי להשתמש בדוגמת הקוד הזו, צריך לפעול לפי ההוראות שבקטעים הגדרה והוספת מפה תלת-ממדית לאפליקציה כדי להגדיר את פרויקט 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. כדי להשתמש בדוגמת הקוד הזו, צריך לפעול לפי ההוראות שבקטעים הגדרה והוספת מפה תלת-ממדית לאפליקציה כדי להגדיר את פרויקט 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 } )