完成應用程式設定來使用 Geospatial API 後,即可取得裝置相機的 AREarthManager.CameraGeospatialPose
。在 AREarthManager
物件中管理的這個姿勢包含以下資訊:
- 位置 (以緯度和經度表示)
- 海拔高度
- 使用者所在位置的近似方向,以 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+) 角度通常可以精確,不過,視各地點的 VPS 資料可用性和時間條件而定,偏轉 (Y+) 角可能也不同。您的應用程式可能需要進行調整,以確認準確度。
GeospatialPose.OrientationYawAccuracy
可準確預估特定 AREarthManager.CameraGeospatialPose
的偏轉角 (Y+) 角度。方向偏轉精確度是一個數字,用來說明 GeospatialPose.EunRotation
中偏轉角度第 68 個百分位數信賴水準的半徑 (以度為單位)。換句話說,AREarthManager.CameraGeospatialPose
的實際偏轉角度有 68% 的機率在傳回度數的
GeospatialPose.OrientationYawAccuracy
。
值越大表示準確率越低。舉例來說,假設預估偏轉角度為 60 度,而偏轉精準度為 10 度,則實際偏轉角度介於 50 到 70 度之間,有 68% 的機率會出現 68%。
後續步驟
- 取得錨點的地理空間姿勢,放置地理空間錨點。