Sprawdź pozycję aparatu urządzenia w orientacji geoprzestrzennej

Po skonfigurowaniu ustawień aplikacji pod kątem używania interfejsu Geospatial API możesz uzyskać AREarthManager.CameraGeospatialPose kamery urządzenia. Ta pozycja zarządzana w obiekcie AREarthManager zawiera te informacje:

  • Lokalizacja wyrażona w postaci szerokości i długości geograficznej
  • Wysokość
  • Orientacja przybliżona do kierunku, w którym skierowany jest użytkownik w układzie współrzędnych UES – X+ wskazuje wschód, Y+ jest skierowany w górę, a Z+ – południe

Sprawdzanie stanu śledzenia

Wartości geoprzestrzenne są prawidłowe tylko wtedy, gdy AREarthManager.EarthTrackingState to TrackingState.Tracking. Pamiętaj, aby umieścić wszystkie wywołania interfejsu Geospatial API w bloku sterującym AREarthManager.EarthTrackingState.

var earthTrackingState = EarthManager.EarthTrackingState;
if (earthTrackingState == TrackingState.Tracking)
{
  // camera_geospatial_pose contains geodetic location, rotation, and
  // confidences values.
  var cameraGeospatialPose = EarthManager.CameraGeospatialPose;
}

Jeśli AREarthManager.EarthTrackingState nie zmieni się na TrackingState.Tracking, AREarthManager.EarthTrackingState może mieć wartość TrackingState.Limited lub TrackingState.None. Jeśli żaden z tych warunków nie jest spełniony, zaznacz pozycję TrackingState.EarthTrackingState, która wyświetla inne stany błędu, które mogą uniemożliwiać śledzenie obiektu AREarthManager.

Dostosuj pozycję, aby uzyskać dokładność

Gdy urządzenie jest ustawione pionowo w orientacji domyślnej, kąty nachylenia (X+) i obrócenia (Z+) są zazwyczaj precyzyjne ze względu na naturalne dopasowanie do śledzenia AR. Jednak kąty odchylenia (Y+) mogą się różnić w zależności od dostępności danych VPS i warunków czasowych w danej lokalizacji. Aplikacja może wymagać dostosowania dokładności.

GeospatialPose.OrientationYawAccuracy podaje oszacowanie dokładności kątów odchylenia (Y+) dla określonych elementów AREarthManager.CameraGeospatialPose. Dokładność odchylenia orientacji to liczba opisująca promień (w stopniach) 68 centyla poziomu ufności wokół kątów odchylenia w narzędziu GeospatialPose.EunRotation. Oznacza to, że istnieje 68% prawdopodobieństwa, że rzeczywisty kąt odchylenia funkcji AREarthManager.CameraGeospatialPose jest dokładny z uwzględnieniem liczby stopni zwróconych przez GeospatialPose.OrientationYawAccuracy

Większe wartości oznaczają mniejszą dokładność. Jeśli na przykład szacowany kąt odchylenia wynosi 60 stopni, a dokładność odchylenia wynosi 10 stopni, istnieje prawdopodobieństwo na poziomie 68%, że rzeczywisty kąt odchylenia wynosi od 50 do 70 stopni.

Co dalej?