Ankerrelaties en wegwijs maken in Azure Spatial Anchors

Door ankerrelaties te gebruiken, kunt u verbonden ankers in een ruimte maken en vervolgens vragen als volgt stellen:

  • Zijn er ankers in de buurt?
  • Hoe ver weg zijn ze?

Voorbeelden

U kunt verbonden ankers gebruiken in dergelijke gevallen:

  • Een werknemer moet een taak voltooien waarbij verschillende locaties in een industriële fabriek worden bezocht. De fabriek heeft ruimtelijke ankers op elke locatie. Een HoloLens- of mobiele app helpt de werkrol van de ene locatie naar de volgende te begeleiden. De app vraagt eerst naar de nabijgelegen ruimtelijke ankers en leidt de werkrol vervolgens naar de volgende locatie. In de app wordt de algemene richting en afstand tot de volgende locatie visueel weergegeven.

  • Een museum creëert ruimtelijke ankers bij openbare displays. Samen vormen deze ankers een een uur durende rondleiding door de essentiële openbare displays van het museum. Op een openbare display kunnen bezoekers de mixed reality-app van het museum openen op hun mobiele apparaat. Vervolgens wijzen ze hun telefooncamera rond de ruimte om de algemene richting en afstand tot de andere openbare schermen tijdens de rondleiding te zien. Als een gebruiker naar een openbare weergave leidt, werkt de app de algemene richting en afstand bij om de gebruiker te helpen.

Way-finding instellen

Een app die gebruikmaakt van richting en afstand tussen ankers om hulp te bieden, is het gebruik van wegvinden. Way-finding verschilt van kant-en-klare navigatie. In turn-by-turn navigatie worden gebruikers rond muren geleid, door deuren en tussen vloeren. Met way-finding krijgt de gebruiker hints over de algemene richting van de bestemming. Maar deductie of kennis van de ruimte helpt de gebruiker ook door de structuur naar de bestemming te navigeren.

Als u een wegzoekervaring wilt bouwen, bereidt u eerst een ruimte voor de ervaring voor en ontwikkelt u een app waarmee gebruikers communiceren. Dit zijn de conceptuele stappen:

  1. Plan de ruimte: bepaal welke locaties binnen de ruimte deel uitmaken van de manier van zoeken. In onze scenario's kan de fabriekstoezichthouder of de museumtourcoördinator bepalen welke locaties moeten worden opgenomen in de manier van zoeken.

  2. Verbinding maken ankers: Bezoek de gekozen locaties om ruimtelijke ankers te maken. U kunt dit doen in een beheermodus van de eindgebruiker-app of in een andere app. U verbindt of koppelt elk anker aan de anderen. De service onderhoudt deze relaties.

  3. Start de eindgebruikerservaring: gebruikers voeren de app uit om een anker te vinden, dat zich op een van de gekozen locaties kan bevinden. Uw algehele ontwerp moet bepalen op welke locaties gebruikers de ervaring kunnen invoeren.

  4. Vind ankers in de buurt: nadat de gebruiker een anker heeft gevonden, kan de app ankers in de buurt aanvragen. Deze procedure retourneert een houding tussen het apparaat en deze ankers.

  5. Gids voor de gebruiker: de app kan de pose voor elk van deze ankers gebruiken om richtlijnen te geven over de algemene richting en afstand van de gebruiker. De camerafeed in de app kan bijvoorbeeld een pictogram en pijl weergeven om elke mogelijke bestemming weer te geven, zoals in de volgende afbeelding wordt weergegeven.

  6. Verfijn de richtlijnen: terwijl de gebruiker loopt, kan de app periodiek een nieuwe houding tussen het apparaat en het doelanker berekenen. De app blijft de richtlijnenhints verfijnen die de gebruiker helpen bij het bereiken van de bestemming.

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

Verbinding maken ankers

Als u een manier van zoeken wilt bouwen, moet u eerst de ankers op de gekozen locaties plaatsen. In deze sectie gaan we ervan uit dat de beheerder van de app dit werk al heeft voltooid.

Verbinding maken ankers in één sessie

Ankers verbinden:

  1. Ga naar de eerste locatie en maak Anker A met behulp van een CloudSpatialAnchorSession.
  2. Ga naar de tweede locatie. Het onderliggende MR/AR-platform houdt de beweging bij.
  3. Maak Anchor B met behulp van dezelfde CloudSpatialAnchorSession. Ankers A en B zijn nu verbonden. De Spatial Anchors-service onderhoudt deze relatie.
  4. Ga door met de procedure voor de resterende ankers.

Verbinding maken ankers in meerdere sessies

U kunt ruimtelijke ankers verbinden via meerdere sessies. Met deze methode kunt u een aantal ankers tegelijk maken en verbinden en later meer ankers maken en verbinden.

Ankers verbinden via meerdere sessies:

  1. De app maakt enkele ankers (Anchors A en B) in één CloudSpatialAnchorSession.
  2. Op een ander moment zoekt de app een van deze ankers (bijvoorbeeld Anchor A) met behulp van een nieuwe CloudSpatialAnchorSession.
  3. Ga naar een nieuwe locatie. Het onderliggende mixed reality- of augmented reality-platform houdt de beweging bij.
  4. Maak Anchor C met dezelfde CloudSpatialAnchorSession. Ankers A, B en C zijn nu verbonden. De Spatial Anchors-service onderhoudt deze relatie.

U kunt deze procedure voortzetten voor meer ankers en meer sessies in de loop van de tijd.

Ankerverbindingen controleren

De app kan controleren of twee ankers zijn verbonden door een query uit te voeren voor ankers in de buurt, wat u doet door de NearAnchorCriteria op een CloudSpatialAnchorWatcherin te stellen. Wanneer het resultaat van de query het doelanker bevat, wordt de ankerverbinding gecontroleerd. Als de ankers niet zijn verbonden, kan de app proberen deze opnieuw te verbinden.

Hier volgen enkele redenen waarom ankers mogelijk geen verbinding kunnen maken:

  • Het onderliggende mixed reality- of augmented reality-platform is verloren gegaan tijdens het proces van het verbinden van ankers.
  • Vanwege een netwerkfout tijdens de communicatie met de Spatial Anchors-service kan de ankerverbinding niet worden behouden.

Voorbeeldcode zoeken

Als u voorbeeldcode wilt vinden die laat zien hoe u ankers verbindt en query's in de buurt uitvoert, raadpleegt u voorbeeld-apps voor Spatial Anchors.