設定應用程式使用 Geospatial API 後,即可取得裝置相機的 AREarthManager.CameraGeospatialPose
。這個姿勢會在 AREarthManager
物件中管理,並包含下列資訊:
- 以經緯度表示的位置
- 海拔高度
- 方向大致上與使用者在 EUS 座標系統中面向的方向相同,其中 X+ 指向東方、Y+ 指向上方,而 Z+ 指向南方
查看追蹤狀態
地理空間值只有在 AREarthManager.EarthTrackingState
為 TrackingState.Tracking
時才有效。請務必將所有 Geospatial API 呼叫包裝在 AREarthManager.EarthTrackingState
控制區塊中。
var earthTrackingState = EarthManager.EarthTrackingState;
if (earthTrackingState == TrackingState.Tracking)
{
// camera_geospatial_pose contains geodetic location, rotation, and
// confidences values.
var cameraGeospatialPose = EarthManager.CameraGeospatialPose;
}
如果 AREarthManager.EarthTrackingState
未變成 TrackingState.Tracking
,AREarthManager.EarthTrackingState
可能會是 TrackingState.Limited
或 TrackingState.None
。如果上述兩種情況都不成立,請檢查 TrackingState.EarthTrackingState
,這會顯示其他可能導致 AREarthManager
物件無法追蹤的錯誤狀態。
調整姿勢以提高準確度
當裝置以預設方向直立時,由於 AR 追蹤會自然對齊,因此傾斜 (X+) 和滾動 (Z+) 角度通常會精確。不過,偏航角 (Y+) 可能會因 VPS 資料可用性和位置的時間條件而異。應用程式可能需要調整準確度。
GeospatialPose.OrientationYawAccuracy
會針對特定 AREarthManager.CameraGeospatialPose
提供偏航 (Y+) 角度的預估精確度。方向偏轉準確度是指 GeospatialPose.EunRotation
中偏轉角度的 68 百分位信賴水準半徑 (以度為單位)。換句話說,AREarthManager.CameraGeospatialPose
的實際偏航角與 GeospatialPose.OrientationYawAccuracy
傳回的度數相符的機率為 68%。
值越大,準確度越低。舉例來說,如果預估偏轉角度為 60 度,且偏轉精確度為 10 度,則實際偏轉角度介於 50 和 70 度之間的機率為 68%。
後續步驟
- 取得錨點的地理空間姿勢,放置地理空間錨點。