Geospatial API का इस्तेमाल करने के लिए, अपने ऐप्लिकेशन की सेटिंग कॉन्फ़िगर करने के बाद, Earth.getCameraGeospatialPose()
को कॉल करके GeospatialPose
पाया जा सकता है. इससे, नए फ़्रेम में कैमरे के लिए, डिवाइस की जियोस्पेशल पोज़िशनिंग के बारे में पता चलता है. इस पोज़ को Earth
ऑब्जेक्ट में मैनेज किया जाता है. इसमें यह जानकारी शामिल होती है:
- जगह की जानकारी, अक्षांश और देशांतर में दी गई हो
- ऊंचाई
- ईयूएस कोऑर्डिनेट सिस्टम में, उपयोगकर्ता की ओर की दिशा का अनुमानित ओरिएंटेशन. इसमें X+ पूर्व की ओर, Y+ ऊपर की ओर, और Z+ दक्षिण की ओर है
ट्रैकिंग की स्थिति देखना
जियोस्पेशल वैल्यू सिर्फ़ तब मान्य होती हैं, जब Earth.TrackingState
की वैल्यू TrackingState.TRACKING
हो. पक्का करें कि सभी जियोस्पेशल एपीआई कॉल को Earth.TrackingState
कंट्रोल ब्लॉक में रैप किया गया हो.
if (earth != null && earth.getTrackingState() == TrackingState.TRACKING) { GeospatialPose cameraGeospatialPose = earth.getCameraGeospatialPose(); // cameraGeospatialPose contains geodetic location, rotation, and confidences values. }
if (earth.trackingState == TrackingState.TRACKING) { val cameraGeospatialPose = earth.cameraGeospatialPose // cameraGeospatialPose contains geodetic location, rotation, and confidences values. }
अगर Earth.TrackingState
, TrackingState.TRACKING
नहीं बनता है, तो Earth.TrackingState
, TrackingState.PAUSED
या TrackingState.STOPPED
हो सकता है. अगर इनमें से कोई भी शर्त पूरी नहीं होती है, तो Earth.Earthstate
देखें. इससे, गड़बड़ी की अन्य स्थितियां दिखती हैं, जिनकी वजह से Earth
ऑब्जेक्ट को ट्रैक नहीं किया जा सकता.
सटीक जानकारी पाने के लिए, पोज़ में बदलाव करना
जब डिवाइस डिफ़ॉल्ट ओरिएंटेशन में सीधा होता है, तो पिच (X+) और रोल (Z+) ऐंगल सटीक होते हैं. ऐसा, एआर ट्रैकिंग के साथ डिवाइस के अपने-आप अलाइन होने की वजह से होता है. हालांकि, जगह पर वीपीएस डेटा की उपलब्धता और समय के हिसाब से, याव (Y+) ऐंगल अलग-अलग हो सकते हैं. सटीक जानकारी देने के लिए, आपके ऐप्लिकेशन को बदलाव करने पड़ सकते हैं.
GeospatialPose.getOrientationYawAccuracy()
, किसी GeospatialPose
के लिए, याव (Y+) ऐंगल के सटीक अनुमान की जानकारी देता है. ओरिएंटेशन याव की सटीक जानकारी एक संख्या होती है. यह GeospatialPose.getEastUpSouthQuaternion()
से मिले याव ऐंगल के आस-पास, 68वें प्रतिशत के कॉन्फ़िडेंस लेवल के रेडियस को डिग्री में बताती है. दूसरे शब्दों में, इस बात की 68% संभावना है कि GeospatialPose
का असल याव ऐंगल सटीक हो.
बड़ी वैल्यू का मतलब है कि अनुमान कम सटीक है. उदाहरण के लिए, अगर अनुमानित याव ऐंगल 60 डिग्री है और याव ऐंगल की सटीक वैल्यू 10 डिग्री है, तो इस बात की 68% संभावना है कि असल याव ऐंगल 50 से 70 डिग्री के बीच हो.
आगे क्या करना है
- ऐंकर की भौगोलिक पोज़िशन का पता लगाकर, जियोस्पेशल ऐंकर डालें.