Setelah mengonfigurasi setelan aplikasi untuk menggunakan Geospatial API, Anda dapat memanggil Earth.getCameraGeospatialPose()
untuk mendapatkan GeospatialPose
yang menjelaskan pemosisian Geospasial perangkat untuk kamera dalam frame terbaru. Pose ini, yang dikelola dalam objek Earth
, berisi informasi berikut:
- Lokasi, dinyatakan dalam lintang dan bujur
- Ketinggian
- Orientasi yang mendekati arah yang dihadapi pengguna dalam sistem koordinat EUS dengan X+ mengarah ke timur, Y+ mengarah ke atas, dan Z+ mengarah ke selatan
Memeriksa status pelacakan
Nilai geospasial hanya valid saat Earth.TrackingState
adalah TrackingState.TRACKING
. Pastikan untuk menggabungkan semua panggilan Geospatial API dalam blok kontrol 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. }
Jika Earth.TrackingState
tidak menjadi TrackingState.TRACKING
, Earth.TrackingState
dapat berupa TrackingState.PAUSED
atau TrackingState.STOPPED
. Jika salah satu kondisi ini tidak benar, periksa Earth.Earthstate
, yang menampilkan status error lain yang dapat mencegah pelacakan objek Earth
.
Menyesuaikan pose untuk akurasi
Saat perangkat tegak dalam orientasi default, sudut pitch (X+) dan roll (Z+) cenderung presisi karena perataan alami dengan pelacakan AR. Namun, sudut yaw (Y+) dapat bervariasi bergantung pada ketersediaan data VPS dan kondisi temporal di lokasi. Aplikasi Anda mungkin harus melakukan penyesuaian untuk akurasi.
GeospatialPose.getOrientationYawAccuracy()
memberikan estimasi akurasi untuk sudut yaw (Y+) untuk GeospatialPose
tertentu. Akurasi yaw orientasi adalah angka yang menjelaskan radius, dalam derajat, dari tingkat keyakinan persentil ke-68 di sekitar sudut yaw yang ditampilkan dari GeospatialPose.getEastUpSouthQuaternion()
. Dengan kata lain, ada peluang 68% bahwa sudut yaw sebenarnya GeospatialPose
akurat.
Nilai yang lebih besar menunjukkan akurasi yang lebih rendah. Misalnya, jika estimasi sudut yaw adalah 60 derajat dan akurasi yaw adalah 10 derajat, maka ada probabilitas 68% bahwa sudut yaw sebenarnya antara 50 dan 70 derajat.
Langkah berikutnya
- Tempatkan Anker geospasial dengan mendapatkan pose Geospasial anchor.