ฉันกำลังคิดเกี่ยวกับการเขียนซอฟต์แวร์เพื่อจัดการกับ GPS Tracks และ Waypoints (ส่วนใหญ่การจัดเก็บการแสดงและการคำนวณตัวชี้วัดเช่นความเร็วเกรดและสถิติง่ายๆ)
ฉันสงสัยว่าอะไรควรเป็นโมเดลข้อมูลที่มีแนวคิดที่แข็งแกร่งที่สุดเกี่ยวกับ trackpoint และนี่คือ "ตัวเลือก":
พิจารณาเพลงเป็นลำดับของ Trackpoints:
1.1 เพลงถือว่าเป็น "2D" เนื่องจากการคาดคะเนแผนที่เป็น 2D Trackpoints อาจมีระดับความสูงหรือไม่อาจมีการประทับเวลา ระดับความสูงและการประทับเวลาจะพิจารณาเป็น "พิเศษ", "ตัวเลือก" สำหรับการใช้งานภาคพื้นดินการยกระดับเป็นหน้าที่โดยตรงของ lat / lon (หาได้ผ่าน DEM)
1.2 เพลงถือว่าเป็น "3D" เนื่องจากพื้นที่ทางภูมิศาสตร์เป็น 3D จริงและเส้นทางการเคลื่อนที่ของผู้รับคือ 3D (การฉายภาพ 2D จึงเป็นรูปแบบหนึ่งของการลดข้อมูล) การประทับเวลาอาจมีหรือไม่มี (แทร็กอาจถูกวาดด้วยมือ)
1.3 เพลงถือว่าเป็น "4D" (3 spatial + time) ดังนั้นแผนที่วาดด้วยมือจึงเป็นกรณีพิเศษที่ระดับความสูงและการประทับเวลาอยู่
null
หรือไม่ปรากฏขึ้น แต่คุณสมบัติของ Trackpoint จะอยู่ที่ "นั่น" เสมอแทร็กถือเป็นพจนานุกรมของสตรีมที่สตรีมทั้งหมดมีความยาวเท่ากัน มีรายการละติจูด, รายการของลองจิจูด, รายการระดับความสูง, หนึ่งในเวลาประทับ ฯลฯ ซึ่งทำให้ง่ายต่อการคำนวณสถิติของทรัพย์สินแต่ละรายการและแนวคิดของ Trackpoint จะกลายเป็น "เสมือน" ในแง่หนึ่งเนื่องจากเป็น ภาพตัดขวางของสตรีมจำนวนมาก
หากฉันเข้าใจถูกต้องรูปแบบ GPX จะใช้ 1.1. KML จะใช้ 1.2 (โดยไม่มีการสนับสนุนการประทับเวลา) และ Strava API adopts 2 (ในรูปแบบ JSON) แต่ในที่สุดสิ่งเหล่านี้เป็นเพียงรูปแบบไฟล์สำหรับการจัดลำดับและการจัดเก็บข้อมูลไม่จำเป็นต้องใช้สำหรับการสร้างแบบจำลอง
มีรูปแบบใดที่เป็นที่นิยมมากกว่าในแง่ของวัตถุและเพราะเหตุใด (ฉันเชื่อว่าอย่างน้อยการพิมพ์และการสร้างแบบจำลองที่สมเหตุสมผลจะหลีกเลี่ยงการดำเนินการที่ไม่สมเหตุสมผล)
แก้ไข: คำถามเพิ่มเติมที่น่าสนใจ:
- แทร็กที่วาดด้วยมือเป็นสิ่งเดียวกับแทร็คที่บันทึกด้วยอุปกรณ์หรือไม่ ควรเป็นประเภทข้อมูลที่แตกต่างกันหรือไม่
- ควรพิจารณาว่า "ถูกต้อง" หรือไม่ที่ KML จัดเก็บระดับความสูงเป็นศูนย์หรือไม่ การยกระดับเป็นศูนย์และถ้าคุณไม่ทราบระดับความสูงคุณไม่ควรกำหนดศูนย์ที่เป็นตัวเลขให้กับมันใช่ไหม
- ในกรณีที่แทร็คยกระดับควรแยกข้อมูลระดับความสูงจากข้อมูล DEM ("ออฟไลน์") หรือจากข้อมูล GPS หรือข้อมูลความกดอากาศ ("ในช่อง") หรือไม่ ควรตั้งค่าสถานะนี้ในวัตถุติดตามหรือไม่ บันทึกไว้ในคุณสมบัติ Trackpoint ที่ต่างกันหรือไม่ ละเว้น? พวกเขาควรจะเป็นประเภทข้อมูลการเก็บรวบรวมที่แตกต่างกัน?
- หากฉันแก้ไขแทร็กที่บันทึกโดยอุปกรณ์ในตัวแก้ไขแผนที่ (การเพิ่มย้ายและลบจุด) หรือรวมแทร็กจากวันที่แตกต่างกันการประทับเวลาในแทร็กพอยต์ควรจะจัดการอย่างไร พวกเขาควรจะ "ตั้งค่าใหม่" เป็นโมฆะ? ควรสร้างวัตถุ (คอลเลกชัน trackpoint) ของประเภทที่แตกต่างจากวัตถุในอดีตหรือไม่?
<>
และ{}
เพื่อช่วยคุณจัดระเบียบข้อมูลและข้อมูลเมตา - คุณทำผิด