भौगोलिक एपीआई का इस्तेमाल करने के लिए अपने ऐप्लिकेशन की सेटिंग को कॉन्फ़िगर करने के बाद, आपके पास Earth.getCameraGeospatialPose()
को कॉल करके, GeospatialPose
को कॉल करने का विकल्प होता है. इसमें नए फ़्रेम में, कैमरे के लिए डिवाइस की भौगोलिक स्थिति के बारे में बताया जाता है. इस पोज़ को किसी Earth
ऑब्जेक्ट में मैनेज किया जा रहा है. इसमें यह जानकारी शामिल है:
- जगह की जानकारी, अक्षांश और देशांतर में दिखाई जाती है
- ऊंचाई
- उपयोगकर्ता की ओर से ईयूएस निर्देशांक सिस्टम में जिस दिशा में है उसका अंदाज़ा लगाने वाला ओरिएंटेशन
ट्रैकिंग की स्थिति देखना
भौगोलिक डेटा सिर्फ़ तब मान्य होता है, जब Earth.TrackingState
TrackingState.TRACKING
होता है. सभी भौगोलिक एपीआई कॉल को Earth.TrackingState
कंट्रोल ब्लॉक में रैप करना न भूलें.
Java
if (earth != null && earth.getTrackingState() == TrackingState.TRACKING) { GeospatialPose cameraGeospatialPose = earth.getCameraGeospatialPose(); // cameraGeospatialPose contains geodetic location, rotation, and confidences values. }
Kotlin
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 डिग्री के बीच है.
आगे क्या करना है
- ऐंकर के जियोस्पेशियल पोज़ को हासिल करके, जियोस्पेशियल ऐंकर लगाएं.