अपने 3D मैप में कैमरा पाथ ऐनिमेशन जोड़े जा सकते हैं, ताकि उपयोगकर्ताओं को ज़्यादा इमर्सिव अनुभव मिल सके. कैमरा पाथ ऐनिमेशन, मैप पर किसी जगह पर फ़्लाई कर सकते हैं, उसके आस-पास फ़्लाई कर सकते हैं या उन्हें एक साथ जोड़कर,
Camera
को ऐनिमेट किया जा सकता है. इसमें, उसकी
ऊंचाई
और
altitudeMode की जानकारी भी शामिल है.
किसी ऐनिमेशन के लिए
Camera
को कॉन्फ़िगर करते समय, altitudeMode
प्रॉपर्टी को सेट किया जा सकता है या
setAltitudeMode
को कॉल किया जा सकता है. इससे यह तय किया जा सकता है कि कैमरे की ऊंचाई को कैसे समझा जाए:
AltitudeMode.ABSOLUTE: इससे ऊंचाई को समुद्र तल से मीटर में मापा जाता है. अगर कोई वैल्यू तय नहीं की जाती है, तो यह डिफ़ॉल्ट वैल्यू होती है.AltitudeMode.RELATIVE_TO_GROUND: यह कैमरे के केंद्र बिंदु पर, ज़मीन की सतह से ऊपर की ऊंचाई को मीटर में दिखाता है.AltitudeMode.RELATIVE_TO_MESH: यह कैमरे के सेंटर पॉइंट पर, सबसे ऊंची 3D मेश सतह (जैसे, इमारतें या पेड़) से ऊपर की ऊंचाई को मीटर में दिखाता है.
सीधे इस पर जाएं
यहां दिए गए कोड सैंपल में, FlyToOptions कॉन्फ़िगरेशन के साथ GoogleMap3D पर flyCameraTo तरीके को कॉल करके, Camera को 3D मैप पर किसी खास पॉइंट पर ले जाने का तरीका बताया गया है.
// 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
}
)
इधर-उधर घूमें
यहां दिए गए कोड सैंपल में, Camera को ऐनिमेट करने का तरीका बताया गया है. इससे 3D मैप पर किसी खास पॉइंट के आस-पास फ़्लाई किया जा सकता है. इसके लिए, FlyAroundOptions कॉन्फ़िगरेशन के साथ GoogleMap3D पर flyCameraAround तरीके को कॉल करें.
// 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
}
)