ARCore Measurment for Android
31.2 MB
ขนาดไฟล์
- ความปลอดภัย
Everyone
Android 10.0+
Android OS
เกี่ยวกับ ARCore Measurment for Android
แอปพลิเคชันนี้ใช้ AR Core ในการวัดระยะทาง พื้นที่ และปริมาตร
1. การวัดระยะทาง
ระยะทางเป็นการวัดพื้นฐานที่สุดใน AR โดยคำนวณจากระยะทางแบบยูคลิดระหว่างพิกัด 3 มิติสองจุด (จุดยึด) ที่วางอยู่ในฉาก AR
2. การวัดพื้นที่
ในการวัดพื้นที่ ผู้ใช้ต้องวางจุดยึดอย่างน้อยสามจุดเพื่อสร้างรูปหลายเหลี่ยม การวัดพื้นที่ AR ส่วนใหญ่จะถือว่าพื้นผิวเป็นระนาบแบน (พื้นผิว 2 มิติในพื้นที่ 3 มิติ)
อัลกอริทึม:
วิธีการที่ใช้กันทั่วไปคือสูตรเชือกผูกรองเท้า (สูตรของนักสำรวจ) เนื่องจากจุดอยู่ใน 3 มิติ คุณควรฉายจุดเหล่านั้นลงบนระนาบ 2 มิติก่อน (โดยใช้เวกเตอร์ตั้งฉากของระนาบ) หรือตรวจสอบให้แน่ใจว่าจุดทั้งหมดอยู่บนระนาบหลัก AR ที่ตรวจพบเดียวกัน
3. การวัดปริมาตร
ปริมาตรมีความซับซ้อนมากกว่ามากเพราะต้องใช้ความลึก มีสองวิธีหลักในการเข้าถึงเรื่องนี้:
- วิธีกล่อง (การอัดขึ้นรูป): วัดพื้นที่พื้น (ตามที่อธิบายไว้ข้างต้น) แล้ววัดระยะทางแนวตั้ง (ความสูง)
สูตร: ปริมาตร = พื้นที่ * ความสูง
- วิธี Bounding Box: ใช้จุดมุมทแยงสองจุดเพื่อกำหนดลูกบาศก์ 3 มิติ
- Depth API (ขั้นสูง): ใช้ AR Core เพื่อสร้างจุดเมฆของวัตถุและคำนวณปริมาตรผ่าน Convex Hull หรือ Voxelization วิธีนี้มีความแม่นยำมากกว่าสำหรับวัตถุที่ไม่เป็นรูปทรงปกติ แต่ต้องใช้อุปกรณ์ที่มีเซ็นเซอร์ Time-of-Flight หรือการรองรับความลึกคุณภาพสูง
เนื่องจากคุณกำลังเจาะลึกลงไปในการใช้งาน ความท้าทายที่แท้จริงใน AR Core ไม่ใช่แค่คณิตศาสตร์ แต่เป็น UX และความแม่นยำ การวัดพื้นที่ 3 มิติบนหน้าจอ 2 มิติอาจทำให้ผู้ใช้รู้สึกยุ่งยาก
ต่อไปนี้คือรายละเอียดเกี่ยวกับวิธีการจัดโครงสร้างตรรกะ Java ของคุณสำหรับคุณสมบัติเหล่านี้:
1. ระยะทาง (พื้นฐาน)
เพื่อให้ได้การวัดที่แม่นยำ คุณควรใช้ Session hit Test() เพื่อวาง Anchor การใช้ Anchor ช่วยให้มั่นใจได้ว่าแม้กล้องจะเคลื่อนที่ จุดต่างๆ ก็ยังคง "ล็อก" อยู่กับพิกัดโลกทางกายภาพ
2. พื้นที่ (เรขาคณิตระนาบ)
สำหรับพื้นที่ ผู้ใช้มักต้องการวัดพื้นหรือผนัง คุณควรจำกัดจุดของคุณให้อยู่ในระนาบเดียว หากจุดอยู่บนระนาบแนวนอนเดียวกัน (ค่า y เกือบจะเหมือนกัน) คุณสามารถละเว้นแกน y และถือว่าเป็นการคำนวณรูปหลายเหลี่ยม 2 มิติได้
เคล็ดลับการใช้งาน: จัดเก็บจุดของคุณไว้ใน List เมื่อผู้ใช้เพิ่มจุดใหม่ ให้อัปเดตตัวอย่าง "พื้นที่ปัจจุบัน" แบบไดนามิก สูตร Shoelace เป็นมาตรฐานในที่นี้ เนื่องจากใช้งานได้กับรูปหลายเหลี่ยมที่ไม่ตัดกันเอง (รูปทรงไม่สม่ำเสมอ)
3. ปริมาตร (วิธี "กล่อง")
การคำนวณปริมาตรของวัตถุ 3 มิติใดๆ นั้นทำได้ยากมากหากไม่มีเซ็นเซอร์ LiDAR สำหรับแอป Java AR Core มาตรฐาน วิธีที่น่าเชื่อถือที่สุดคือวิธี Extruded Polygon:
1. กำหนดฐาน: ผู้ใช้คลิกจุดเพื่อกำหนดพื้นที่พื้น (A)
2. กำหนดความสูง: ผู้ใช้คลิกจุดบนพื้นและลากเส้นขึ้น หรือคลิกจุดบนเพดาน (h)
3. คำนวณ: V = A * h
เคล็ดลับเพื่อความแม่นยำ
API ความลึก: หากอุปกรณ์รองรับ ให้เปิดใช้งาน Raw Depth API ซึ่งจะช่วยให้คุณทำการทดสอบการชนกับวัตถุ "ที่ไม่เป็นระนาบ" (เช่น โซฟาหรือลูกบอล) ซึ่งการค้นหาระนาบแบบมาตรฐานอาจพลาดไป
การปรับให้เรียบ: พิกัด AR อาจสั่นไหว ใช้ตัวกรองค่าเฉลี่ยเคลื่อนที่แบบง่ายๆ กับตำแหน่งกล้องหรือผลลัพธ์การทดสอบการชนเพื่อป้องกันไม่ให้ตัวเลขการวัดกระโดดไปมาอย่างรวดเร็ว
สถาปัตยกรรมที่แนะนำ
ตัวจัดการการวัด: คลาสแบบซิงเกิลตันหรือคลาสตัวช่วยเพื่อจัดเก็บรายการจุดยึดที่ใช้งานอยู่
ตัวเรนเดอร์: จัดการการวาดเส้นและป้ายข้อความในโอเวอร์เลย์ AR
ตัวแปลงหน่วย: ยูทิลิตี้สำหรับสลับระหว่างเมตริก (เมตร/เซนติเมตร) และอิมพีเรียล (ฟุต/นิ้ว)
นอกจากฟังก์ชันที่ระบุไว้แล้ว แอปพลิเคชันนี้ยังมีฟังก์ชันเพิ่มเติม เช่น การแปลภาษา: อังกฤษ สเปน ฝรั่งเศส บัลแกเรีย และเยอรมัน ระยะทาง พื้นที่ และปริมาตรที่คำนวณได้จะแสดงเป็นเมตร ซึ่งสามารถแปลงเป็นเซนติเมตร นิ้ว และฟุตได้
What's new in the latest 9.0
ข้อมูล ARCore Measurment for Android APK
การดาวน์โหลดที่รวดเร็วและปลอดภัยเป็นพิเศษผ่านแอป APKPure
คลิกเพียงครั้งเดียวเพื่อติดตั้งไฟล์ XAPK/APK บน Android!







