Nachdem Sie die Einstellungen Ihrer App für die Verwendung der Geospatial API konfiguriert haben, können Sie Earth.getCameraGeospatialPose()
aufrufen, um einen GeospatialPose
zu erhalten, der die geografische Positionierung des Geräts für die Kamera im letzten Frame beschreibt. Diese Position, die in einem Earth
-Objekt verwaltet wird, enthält die folgenden Informationen:
- Standort in Breiten- und Längengrad
- Höhe
- Eine Ausrichtung, die ungefähr der Richtung entspricht, die der Nutzer im EUS-Koordinatensystem sieht, wobei X+ nach Osten, Y+ nach oben und Z+ nach Süd zeigt
Tracking-Status prüfen
Georeferenzierte Werte sind nur gültig, solange Earth.TrackingState
TrackingState.TRACKING
ist. Alle Geospatial API-Aufrufe müssen in einem Earth.TrackingState
-Steuerblock eingeschlossen sein.
Java
if (earth != null && earth.getTrackingState() == TrackingState.TRACKING) { GeospatialPose cameraGeospatialPose = earth.getCameraGeospatialPose(); // cameraGeospatialPose contains geodetic location, rotation, and confidences values. }
Kotlin
if (earth.trackingState == TrackingState.TRACKING) { val cameraGeospatialPose = earth.cameraGeospatialPose // cameraGeospatialPose contains geodetic location, rotation, and confidences values. }
Wenn Earth.TrackingState
nicht zu TrackingState.TRACKING
wird, kann Earth.TrackingState
TrackingState.PAUSED
oder TrackingState.STOPPED
sein. Wenn keine dieser Bedingungen erfüllt ist, klicken Sie auf Earth.Earthstate
. Es werden weitere Fehlerstatus angezeigt, die das Tracking des Objekts Earth
verhindern.
Pose für mehr Genauigkeit anpassen
Wenn das Gerät in der Standardausrichtung aufrecht steht, sind die Neigungs- (X+) und Rollwinkel (Z+) aufgrund der natürlichen Ausrichtung beim AR-Tracking in der Regel präzise. Der Gierwinkel (Y+) kann jedoch je nach Verfügbarkeit der VPS-Daten und zeitlichen Bedingungen am Standort variieren. Möglicherweise müssen Sie Anpassungen an Ihrer App vornehmen, um die Genauigkeit zu verbessern.
GeospatialPose.getOrientationYawAccuracy()
gibt eine Schätzung der Genauigkeit für die Gierwinkel (Y+) für eine bestimmte GeospatialPose
an. Die Genauigkeit des Gierwinkels ist eine Zahl, die den Radius in Grad des Konfidenzniveaus des 68. Perzentils um die von GeospatialPose.getEastUpSouthQuaternion()
zurückgegebenen Gierwinkel beschreibt. Mit anderen Worten: Es besteht eine Wahrscheinlichkeit von 68 %, dass der tatsächliche Gierwinkel des GeospatialPose
genau ist.
Je höher der Wert, desto ungenauer ist die Schätzung. Wenn der geschätzte Gierwinkel beispielsweise 60 Grad beträgt und die Giergenauigkeit 10 Grad, liegt der wahre Gierwinkel mit einer Wahrscheinlichkeit von 68 % zwischen 50 und 70 Grad.
Nächste Schritte
- Platzieren Sie einen raumbezogenen Anker, indem Sie seine raumbezogene Position abrufen.