Bagikan melalui


Hubungan jangkar dan pencarian jalan di Azure Spatial Anchors

Dengan menggunakan hubungan jangkar, Anda dapat membuat jangkar yang terhubung dalam sebuah ruang dan kemudian mengajukan pertanyaan seperti ini:

  • Apakah ada jangkar di sekitarnya?
  • Seberapa jauh jangkar tersebut?

Contoh

Anda dapat menggunakan jangkar yang terhubung dalam kasus seperti ini:

  • Seorang pekerja perlu menyelesaikan tugas yang melibatkan mengunjungi berbagai lokasi di pabrik industri. Pabrik memiliki jangkar spasial di setiap lokasi. HoloLens atau aplikasi seluler membantu memandu pekerja dari satu lokasi ke lokasi berikutnya. Aplikasi pertama-tama meminta jangkar spasial terdekat dan kemudian memandu pekerja ke lokasi berikutnya. Aplikasi ini secara visual menampilkan arah dan jarak umum ke lokasi berikutnya.

  • Sebuah museum menciptakan jangkar spasial di pajangan publik. Bersama-sama, jangkar ini membentuk tur satu jam dari pameran publik penting museum. Pada tampilan publik, pengunjung dapat membuka aplikasi realitas campuran museum di perangkat seluler mereka. Kemudian pengunjung mengarahkan kamera ponsel mereka di sekitar ruang untuk melihat arah umum dan jarak ke pajangan umum lainnya di tur. Saat pengguna berjalan menuju tampilan publik, aplikasi memperbarui arah dan jarak umum untuk membantu memandu pengguna.

Siapkan pencarian jalan

Aplikasi yang menggunakan arah garis pandang dan jarak antara jangkar untuk memberikan panduan menggunakan pencarian jalan. Pencarian jalan berbeda dengan navigasi setiap belokan. Dalam navigasi setiap belokan, pengguna dipandu di sekitar dinding, melalui pintu, dan di antara lantai. Dengan pencarian jalan, pengguna mendapatkan petunjuk tentang arah umum tujuan. Tetapi inferensi atau pengetahuan tentang ruang juga membantu pengguna menavigasi melalui struktur ke tujuan.

Untuk membangun pengalaman menemukan jalan, pertama-tama siapkan ruang untuk pengalaman dan kembangkan aplikasi yang akan berinteraksi dengan pengguna. Ini adalah langkah-langkah konseptual:

  1. Rencanakan ruang: Tentukan lokasi mana di dalam ruang yang akan menjadi bagian dari pengalaman menemukan jalan. Dalam skenario kami, supervisor pabrik atau koordinator tur museum mungkin memutuskan lokasi mana yang akan disertakan dalam pengalaman pencarian jalan.

  2. Hubungkan jangkar: Kunjungi lokasi yang dipilih untuk membuat jangkar spasial. Anda dapat melakukan ini dalam mode admin aplikasi pengguna akhir atau di aplikasi yang sama sekali berbeda. Anda akan menghubungkan atau menghubungkan setiap jangkar dengan yang lain. Layanan memelihara hubungan ini.

  3. Memulai pengalaman pengguna akhir: Pengguna menjalankan aplikasi untuk menemukan jangkar, yang dapat berada di salah satu lokasi yang dipilih. Desain keseluruhan Anda harus menentukan lokasi tempat pengguna dapat memasuki pengalaman.

  4. Temukan jangkar terdekat: Setelah pengguna menemukan jangkar, aplikasi dapat meminta jangkar terdekat. Prosedur ini mengembalikan pose antara perangkat dan jangkar ini.

  5. Pandu pengguna: Aplikasi dapat menggunakan pose ke masing-masing jangkar ini untuk memberikan panduan tentang arah dan jarak umum pengguna. Misalnya, umpan kamera di aplikasi mungkin menampilkan ikon dan panah untuk mewakili setiap tujuan potensial, seperti yang ditunjukkan gambar berikut.

  6. Sempurnakan panduan: Saat pengguna berjalan, aplikasi dapat menghitung pose baru secara berkala antara perangkat dan jangkar tujuan. Aplikasi terus menyempurnakan petunjuk panduan yang membantu pengguna tiba di tujuan.

    An example of how an app can show way-finding guidance

Hubungkan jangkar

Untuk membangun pengalaman menemukan jalan, Anda harus terlebih dahulu menempatkan jangkar di lokasi yang dipilih. Di bagian ini, kami akan menganggap admin aplikasi telah menyelesaikan pekerjaan ini.

Hubungkan jangkar dalam satu sesi

Untuk menghubungkan jangkar:

  1. Berjalan ke lokasi pertama dan buat Jangkar A dengan menggunakan CloudSpatialAnchorSession.
  2. Berjalan ke lokasi kedua. Platform MR/AR yang mendasari melacak pergerakan.
  3. Buat Jangkar B dengan menggunakan CloudSpatialAnchorSession yang sama. Jangkar A dan B sekarang terhubung. Layanan Spatial Anchors memelihara hubungan ini.
  4. Lanjutkan prosedur untuk jangkar yang tersisa.

Hubungkan jangkar dalam beberapa sesi

Anda dapat menghubungkan jangkar spasial melalui beberapa sesi. Dengan menggunakan metode ini, Anda dapat membuat dan menghubungkan beberapa jangkar pada satu waktu dan kemudian membuat dan menghubungkan lebih banyak jangkar.

Untuk menghubungkan jangkar melalui beberapa sesi:

  1. Aplikasi ini membuat beberapa jangkar (Jangkar A dan B) dalam satu CloudSpatialAnchorSession.
  2. Pada waktu yang berbeda, aplikasi menemukan salah satu jangkar ini (misalnya, Jangkar A) dengan menggunakan CloudSpatialAnchorSession baru.
  3. Berjalan ke lokasi baru. Platform realitas campuran atau realitas tertambah yang mendasari melacak pergerakan.
  4. Buat Jangkar C dengan menggunakan CloudSpatialAnchorSession yang sama. Jangkar A, B, dan C sekarang terhubung. Layanan Spatial Anchors memelihara hubungan ini.

Anda dapat melanjutkan prosedur ini untuk menggabungkan lebih banyak jangkar dan lebih banyak sesi dari waktu ke waktu.

Verifikasi koneksi jangkar

Aplikasi dapat memverifikasi bahwa dua jangkar terhubung dengan mengeluarkan kueri untuk jangkar terdekat, yang Anda lakukan dengan mengatur NearAnchorCriteria ​​pada CloudSpatialAnchorWatcher. Ketika hasil kueri berisi jangkar target, koneksi jangkar diverifikasi. Jika jangkar tidak terhubung, aplikasi dapat mencoba menghubungkannya lagi.

Berikut adalah beberapa alasan mengapa jangkar mungkin gagal terhubung:

  • Platform realitas campuran atau realitas tertambah yang mendasarinya kehilangan pelacakan selama proses menghubungkan jangkar.
  • Karena kesalahan jaringan selama komunikasi dengan layanan Spatial Anchors, sambungan jangkar tidak dapat dipertahankan.

Temukan kode sampel

Untuk menemukan kode sampel yang menampilkan cara menghubungkan jangkar dan melakukan kueri di sekitarnya, lihat Aplikasi sampel Spatial Anchors.