Una vez que hayas configurado la app para usar la API de Geospatial, puedes obtener el AREarthManager.CameraGeospatialPose
de la cámara del dispositivo. Esta pose, administrada en un objeto AREarthManager
, contiene la siguiente información:
- Ubicación, expresada en latitud y longitud
- Altitud
- Una orientación que aproxima la dirección a la que se enfrenta el usuario en el sistema de coordenadas EUS, con X+ apuntando al este, Y+ apuntando hacia arriba y Z+ apuntando al sur
Verifica el estado del seguimiento
Los valores geoespaciales solo son válidos mientras AREarthManager.EarthTrackingState
sea TrackingState.Tracking
. Asegúrate de unir todas las llamadas a la API de Geospatial en un bloque de control AREarthManager.EarthTrackingState
.
var earthTrackingState = EarthManager.EarthTrackingState;
if (earthTrackingState == TrackingState.Tracking)
{
// camera_geospatial_pose contains geodetic location, rotation, and
// confidences values.
var cameraGeospatialPose = EarthManager.CameraGeospatialPose;
}
Si AREarthManager.EarthTrackingState
no se convierte en TrackingState.Tracking
, AREarthManager.EarthTrackingState
puede ser TrackingState.Limited
o TrackingState.None
. Si no se cumple ninguna de estas condiciones, revisa TrackingState.EarthTrackingState
, que muestra otros estados de error que podrían impedir que se realice el seguimiento del objeto AREarthManager
.
Ajusta la pose para mayor precisión
Cuando el dispositivo está en posición vertical en la orientación predeterminada, los ángulos de inclinación (X+) y de balanceo (Z+) suelen ser precisos debido a una alineación natural con el seguimiento de RA. Sin embargo, los ángulos de guiñada (Y+) pueden variar según la disponibilidad de datos de VPS y las condiciones temporales de la ubicación. Es posible que tu app deba realizar ajustes para mejorar su precisión.
GeospatialPose.OrientationYawAccuracy
proporciona una estimación de exactitud de los ángulos de Yaw (Y+) para un AREarthManager.CameraGeospatialPose
determinado. La precisión del guiñada de orientación es un número que describe el radio, en grados, del nivel de confianza del percentil 68 alrededor de los ángulos de guiñada en GeospatialPose.EunRotation
. En otras palabras, hay una probabilidad del 68% de que el ángulo de guiñada real de AREarthManager.CameraGeospatialPose
sea preciso dentro de la cantidad de grados que muestra GeospatialPose.OrientationYawAccuracy
.
Los valores más altos indican una menor precisión. Por ejemplo, si el ángulo de guiñada estimado es de 60 grados y la precisión de guiñada es de 10 grados, existe una probabilidad del 68% de que el ángulo de guiñada real esté entre 50 y 70 grados.
¿Qué sigue?
- Coloca un ancla geoespacial obteniendo la posición geoespacial del ancla.