ขอบคุณสำหรับการให้คะแนนและข้อเสนอแนะของคุณ!
คุณได้ให้คะแนนแล้ว
การวัดระยะทาง พื้นที่ และปริมาตร (DAV) โดยไม่ต้องใช้ AR Core
วิธีการวัดระยะทางโดยใช้ตรีโกณมิติและเซ็นเซอร์ (เรขาคณิต)
นี่เป็นวิธีที่พบได้บ่อยที่สุดในการวัดระยะทางโดยไม่ต้องใช้ AR โดยใช้ความสูงที่ผู้ใช้ถือโทรศัพท์ (h) และมุมเอียง (θ) ที่ตรวจจับได้จากมาตรวัดความเร่ง
วิธีการทำงาน:
หากผู้ใช้ชี้กล้องไปที่ฐานของวัตถุ ระยะทางจะถูกคำนวณโดยใช้สูตร:
d = h⋅tan(90 − θ )
ขั้นตอนสำคัญในแอป:
ใช้ SensorManager เพื่อเข้าถึง Sensor.TYPE_ACCELEROMETER และ Sensor.TYPE_MAGNETIC_FIELD คำนวณมุมเอียง (θ) ของอุปกรณ์ ก่อนหน้านั้น ผู้ใช้จะเลือกความสูงที่ถือโทรศัพท์
นี่เป็นวิธีที่ง่ายที่สุดในการคำนวณด้วยซอฟต์แวร์โดยไม่ต้องประมวลผล 3 มิติที่ซับซ้อน แต่ผู้ใช้ต้องทำตามลำดับที่กำหนด
ปัญหาของวิธีนี้:
หากผู้ใช้ไม่ได้เคลื่อนที่และเพียงแค่ทำเครื่องหมายสองจุดข้างหน้า แอปจะไม่สามารถทราบมุมระหว่างจุดทั้งสองได้โดยอาศัยเพียงระยะทางเท่านั้น เพื่อให้ได้ความแม่นยำทางคณิตศาสตร์ เราต้องใช้ค่า Azimuth จากเข็มทิศด้วย
โค้ด "Java" ที่แม่นยำกว่าสำหรับพื้นที่ (พร้อมมุม):
หากคุณต้องการให้ผู้ใช้ทำเครื่องหมาย 2 จุดจากตำแหน่งเดียวกัน คุณต้องคำนวณมุมที่โทรศัพท์หมุนระหว่างการวัดทั้งสองครั้ง
// ใน onSensorChanged เรายังบันทึกค่า Azimuth (orientation[0]) ด้วย
float currentAzimuth;
// เมื่อจับจุดได้ เราจะบันทึกทั้งระยะทางและมุม
double d1 = capturedDistances.get(0);
double d2 = capturedDistances.get(1);
double angleBetween = Math.abs(azimuth2 - azimuth1);
// สูตรสำหรับพื้นที่ของสามเหลี่ยม เมื่อกำหนดด้านสองด้านและมุมระหว่างด้านทั้งสอง
// (สมมติว่าเรากำลังวัดพื้นที่ของสามเหลี่ยมจากตำแหน่งของเราไปยังจุดสองจุด)
double area = 0.5 * d1 * d2 * Math.sin(Math.toRadians(angleBetween));
สำหรับปริมาตร (3 จุด):
ด้วยจุดสองจุด เราจะได้ฐาน (พื้นที่) จุดที่สามมักใช้สำหรับความสูง
ผู้ใช้ชี้ไปที่ฐานของผนัง (บันทึกระยะทาง)
ผู้ใช้ยกโทรศัพท์ขึ้นไปทางเพดาน
เราคำนวณความแตกต่างของความชันเพื่อหาความสูงในแนวตั้ง H
ปริมาตร = พื้นที่ × H
แอปนี้ นอกเหนือจากคุณสมบัติเฉพาะอื่นๆ แล้ว ยังมีฟังก์ชันเพิ่มเติม เช่น การติดตามตำแหน่ง ระยะทาง พื้นที่ และปริมาตรที่คำนวณได้สามารถวัดได้ในหน่วยเมตร เซนติเมตร นิ้ว และฟุต และคุณสามารถเลือกความสูงที่กล้องของอุปกรณ์จะวัดได้
คลิกเพียงครั้งเดียวเพื่อติดตั้งไฟล์ XAPK/APK บน Android!