Depois de configurar o app para usar a API Geospatial, você pode acessar o AREarthManager.CameraGeospatialPose
da câmera do dispositivo. Essa pose, gerenciada em um objeto AREarthManager
, contém as seguintes informações:
- Localização, expressa em latitude e longitude
- Altitude
- Uma orientação aproximada da direção em que o usuário está de frente no sistema de coordenadas EUS, com X+ apontando para o leste, Y+ para cima e Z+ para o sul
Verificar o estado do acompanhamento
Os valores geoespaciais são válidos apenas quando AREarthManager.EarthTrackingState
é TrackingState.Tracking
. Encapsule todas as chamadas da API Geospatial em um bloco de controle AREarthManager.EarthTrackingState
.
var earthTrackingState = EarthManager.EarthTrackingState;
if (earthTrackingState == TrackingState.Tracking)
{
// camera_geospatial_pose contains geodetic location, rotation, and
// confidences values.
var cameraGeospatialPose = EarthManager.CameraGeospatialPose;
}
Se AREarthManager.EarthTrackingState
não se tornar TrackingState.Tracking
, AREarthManager.EarthTrackingState
pode ser TrackingState.Limited
ou TrackingState.None
. Se nenhuma dessas condições for verdadeira, marque TrackingState.EarthTrackingState
, que mostra outros estados de erro que podem impedir o rastreamento do objeto AREarthManager
.
Ajustar a pose para ter mais precisão
Quando o dispositivo está na orientação vertical padrão, os ângulos de inclinação (X+) e de rolagem (Z+) tendem a ser precisos devido a um alinhamento natural com o rastreamento de RA. No entanto, os ângulos de guinada (Y+) podem variar dependendo da disponibilidade dos dados do VPS e das condições temporais no local. Talvez seja necessário fazer ajustes no app para garantir a precisão.
GeospatialPose.OrientationYawAccuracy
fornece uma estimativa de precisão para os ângulos de guinada (Y+) de uma determinada AREarthManager.CameraGeospatialPose
. A precisão de guinada da orientação é um número que descreve o raio, em graus, do nível de confiança do 68º percentil em torno dos ângulos de guinada em GeospatialPose.EunRotation
. Em outras palavras, há 68% de chance de o ângulo de guinada verdadeiro de AREarthManager.CameraGeospatialPose
ser preciso dentro do número de graus retornado por
GeospatialPose.OrientationYawAccuracy
.
Valores maiores indicam menor precisão. Por exemplo, se o ângulo de guinada estimado for 60 graus e a precisão de guinada for 10 graus, haverá 68% de probabilidade de que o ângulo de guinada verdadeiro esteja entre 50 e 70 graus.
A seguir
- Coloque uma âncora geoespacial acessando a pose geoespacial da âncora.