รับท่า Geospatial ของกล้องของอุปกรณ์

เมื่อคุณกำหนดการตั้งค่าแอปให้ใช้ Geospatial API แล้ว คุณสามารถเรียกใช้ Earth.getCameraGeospatialPose() เพื่อรับ GeospatialPose ที่อธิบายการกำหนดตำแหน่งภูมิสารสนเทศของอุปกรณ์สำหรับกล้องในเฟรมล่าสุด ท่านี้ซึ่งจัดการในออบเจ็กต์ Earth จะมีข้อมูลต่อไปนี้

  • สถานที่ตั้ง แสดงเป็นละติจูดและลองจิจูด
  • ระดับความสูง
  • การวางแนวแบบประมาณทิศทางที่ผู้ใช้หันไปในระบบพิกัดของ EUS โดยเครื่องหมาย X+ ชี้ไปทางทิศตะวันออก Y+ ชี้ขึ้น และ Z+ ชี้ไปทางทิศใต้

ตรวจสอบสถานะการติดตาม

ค่าภูมิสารสนเทศจะใช้ได้ในขณะที่ Earth.TrackingState คือ TrackingState.TRACKING เท่านั้น อย่าลืมรวมการเรียก Geospatial API ทั้งหมดไว้ในบล็อกการควบคุม Earth.TrackingState

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.
}

หาก Earth.TrackingState ไม่ได้เป็น TrackingState.TRACKING Earth.TrackingState อาจเป็น TrackingState.PAUSED หรือ TrackingState.STOPPED หากไม่มีเงื่อนไขใดเป็นจริง ให้เลือก Earth.Earthstate ซึ่งจะแสดงสถานะข้อผิดพลาดอื่นๆ ที่อาจทําให้ออบเจ็กต์ Earth ติดตามไม่ได้

ปรับท่าทางเพื่อความแม่นยำ

เมื่ออุปกรณ์ตั้งตรงในการวางแนวเริ่มต้น มุมระดับความสูงต่ำ (X+) และมุมโค้ง (Z+) มีแนวโน้มที่จะแม่นยำเนื่องจากมีการวางแนวแบบปกติโดยสอดคล้องกับการติดตาม AR อย่างไรก็ตาม มุมเอียง (Y+) อาจแตกต่างกันไปโดยขึ้นอยู่กับความพร้อมใช้งานของข้อมูล VPS และเงื่อนไขชั่วคราวในสถานที่ตั้งนั้นๆ แอปอาจต้องทำการปรับเปลี่ยนเพื่อความแม่นยำ

GeospatialPose.getOrientationYawAccuracy() แสดงค่าประมาณความแม่นยำสำหรับมุมเอียง (Y+) สำหรับ GeospatialPose หนึ่งๆ ความแม่นยําของการวางแนวการเอียงคือตัวเลขที่ระบุรัศมีในหน่วยองศาของระดับความเชื่อมั่นเปอร์เซ็นไทล์ที่ 68 รอบมุมเอียงที่แสดงจาก GeospatialPose.getEastUpSouthQuaternion() กล่าวคือ มีโอกาส 68% ที่มุมเอียงที่แท้จริงของ GeospatialPose จะแม่นยำ

ค่าที่มากกว่าบ่งบอกถึงความแม่นยำที่ต่ำกว่า เช่น หากมุมเอียงโดยประมาณคือ 60 องศา และความแม่นยำในการเอียงคือ 10 องศา ก็มีแนวโน้ม 68% ที่มุมเอียงจริงจะอยู่ระหว่าง 50 ถึง 70 องศา

ขั้นตอนถัดไป