การสร้างแผนที่เส้นทางเคลื่อนไหวใน QGIS?


22

การใช้ QGIS และเครื่องมือฟรีอื่น ๆ ฉันจะใช้เส้นทาง Google Maps เพื่อสร้างภาพเคลื่อนไหวเส้นทางในรูปแบบของภาพยนตร์ Indiana Jones ได้อย่างไร ( https://www.youtube.com/watch?v=5TY5Fp6O5iM )?

ฉันพบคำถามสองข้อในไซต์นี้ ( แสดงเส้นทางการเดินทางของยานพาหนะเป็นภาพเคลื่อนไหวและจุดแทรกระหว่างพิกัดสำหรับภาพเคลื่อนไหวที่ราบรื่นใน google maps หรือ openmap ) ซึ่งจัดการกับปัญหาที่คล้ายกัน แต่ทั้งคู่นั้นใช้ Google Maps หรือ OpenLayers .

ฉันได้พบบทความที่มีประโยชน์มากเกี่ยวกับวิธีใช้ปลั๊กอิน Time Manager QGIS เพื่อแมปไบร์ทที่หายไป ในกรณีของฉันฉันไม่ต้องการเส้นทางที่จะจางหายไปเมื่อเวลาผ่านไป แต่วิธีการนั้นสามารถให้พื้นฐานที่เป็นประโยชน์สำหรับการสร้างเอฟเฟกต์เลเซอร์ตามที่ฉันต้องการ

สิ่งที่ซับซ้อนกว่านั้นคือในขณะที่ฉันรู้เส้นทางที่ฉันต้องการเคลื่อนไหว แต่ฉันไม่มีข้อมูลจริงที่จะใช้เป็นอินพุตสำหรับภาพเคลื่อนไหว ฉันสามารถหาเส้นทางออกจาก Google Maps ได้ แต่นั่นไม่รวมเวลาประทับดังนั้นฉันจึงต้องการวิธีที่จะทำให้ขั้นตอนเป็นไปตามลำดับหรือเพิ่มเวลาอย่างใด

ฉันจะรวบรวมทั้งหมดนี้เข้าด้วยกันหรืออาจจะมีวิธีที่สง่างามกว่านี้เพื่อให้ได้เอฟเฟกต์นี้โดยใช้เครื่องมือที่มีให้ใช้งานฟรี


ยินดีต้อนรับสู่ gis.stackexchange! โปรดทราบว่าคำถามที่ดีในเว็บไซต์นี้คาดว่าจะแสดงการวิจัยระดับหนึ่งในส่วนของคุณเช่นสิ่งที่คุณได้ลองแล้วและ - ถ้ามี - รหัสจนถึงตอนนี้ สำหรับข้อมูลเพิ่มเติมคุณสามารถตรวจสอบของเราคำถามที่พบบ่อย
underdark

สวัสดี @underdark ฉันโพสต์สิ่งนี้เป็นคำถามถามตอบการคิดว่าคำตอบนั้นเป็นหลักฐานของการวิจัย ฉันเข้าใจว่าคำถามยังต้องยืนอยู่คนเดียวเป็นคำถามที่ดีดังนั้นฉันจึงขยายออกไป ขอบคุณสำหรับปลั๊กอินตัวจัดการเวลาที่ยอดเยี่ยมซึ่งเป็นส่วนหนึ่งของการแก้ปัญหานี้!
rudivonstaden

1
สิ่งนี้มีประโยชน์มากเกือบจะเป็นสิ่งที่ฉันพยายามทำ อย่างไรก็ตามมีวิธีใดบ้างที่จะทำให้แผนที่เลื่อนไปตามเส้นทางได้ ฉันต้องการแสดงเส้นทางของถนนที่เสนอซึ่งจะต้องมีการย้ายแผนที่เพื่อแสดงรายละเอียดเพียงพอในระดับที่ต้องการ ฉันใช้เวลากับ Google เป็นอย่างมากและฉันก็ไม่สามารถหาวิธีที่จะทำขั้นตอนสุดท้ายนี้ได้ หากคุณดูวิดีโอ Indiana Jones คุณจะเห็นว่าแผนที่แพนเช่นกัน!
Rob Kemp

1
ขอโทษฉันพลาดที่คุณตอบเอง ฉันรักคำตอบและขอบคุณสำหรับการขยายคำถาม!
underdark

คำตอบ:


36

ขั้นตอนที่ 1: แชร์เส้นทางของคุณใน Google Maps

ในGoogle Mapsให้สร้างเส้นทางจากนั้นแชร์เพื่อรับลิงก์ไปยังเส้นทาง

แชร์ลิงก์แผนที่ใน Google Maps

ขั้นตอนที่ 2: แปลงเส้นทางเป็นไฟล์ GPX

ใช้คุณสมบัติการแปลงที่ใช้งานง่ายที่ GPS Visualizer ( http://www.gpsvisualizer.com/convert_input ) วางลิงก์ที่คุณคัดลอกจาก Google Maps เลือก GPX เป็นรูปแบบผลลัพธ์และดาวน์โหลดไฟล์

แปลงเป็น GPX โดยใช้ GPS Visualizer

ขั้นตอนที่ 3: เพิ่มการประทับเวลาลงในเส้นทาง

อัปโหลดยูทิลิตีการประทับเวลาของ GPX ไปยัง GOTOES ( http://gotoes.org/strava/Add_Timestamps_To_GPX.php ) โดยระบุเวลาเริ่มต้นเขตเวลาและความเร็วเฉลี่ย ดาวน์โหลดไฟล์ผลลัพธ์

เพิ่มการประทับเวลา

ขั้นตอนที่ 4: โหลดจุดติดตามเส้นทางใน QGIS

เพิ่มไฟล์ GPX ที่ประทับเวลาเป็นเลเยอร์เวกเตอร์ใน QGIS เลือกเลเยอร์ track_points เมื่อได้รับแจ้งว่าจะโหลดเลเยอร์ใดจากไฟล์ GPX สิ่งนี้ควรโหลดเส้นทาง breadcrumb ของจุดตามเส้นทาง

คุณควรเพิ่มเลเยอร์ฐานเพื่อเพิ่มบริบทลงในแผนที่ของคุณ QuickMapServices มีประโยชน์ที่นี่ (ดูการเพิ่ม Basemaps จาก Google หรือ Bing ใน QGIS? )

ขั้นตอนที่ 5: บันทึกเป็นเลเยอร์ Spatialite

คุณจะไม่สามารถใช้เลเยอร์ GPX ตามที่เป็นอยู่เพราะไม่สามารถแก้ไขได้ นอกจากนี้ยังมีข้อผิดพลาดที่ตัดทอนเวลาถ้าคุณบันทึกเป็น Shapefile แม้ว่าไฟล์ Spatialite จะทำงานได้ดี เลือกเลเยอร์ในแผงเลเยอร์แล้วเลือก 'เลเยอร์> บันทึกเป็น ... ' จากเมนู ระบุ 'Spatialite' เป็นรูปแบบและตรวจสอบให้แน่ใจว่าได้เลือก 'เพิ่มไฟล์ที่บันทึกไปยังแผนที่'

ขั้นตอนที่ 6: แก้ไข Symbology

ดับเบิลคลิกที่เลเยอร์ในแผงเลเยอร์เพื่อเปิดคุณสมบัติและคลิกที่แท็บสไตล์ คลิกที่สไตล์ 'เครื่องหมายง่าย' และเลือกสีที่เหมาะสมสำหรับเส้นทางเลเซอร์ที่มีสไตล์ของคุณ เปลี่ยนขนาดเป็น 1.5 (หรือความต้องการของคุณเอง) ตั้งค่าลักษณะเค้าร่างเป็น 'No Pen'

อัปเดตสัญลักษณ์

ขั้นตอนที่ 7: เพิ่มปลั๊กอินตัวจัดการเวลาลงใน QGIS

หากคุณยังไม่ได้ดำเนินการให้เพิ่มปลั๊กอินตัวจัดการเวลาลงใน QGIS ไปที่ 'ปลั๊กอิน> จัดการและติดตั้งปลั๊กอิน ... ' เลือกแท็บ 'ทั้งหมด' และค้นหา 'TimeManager' (คำเดียว) ตรวจสอบให้แน่ใจว่าได้ทำเครื่องหมายในช่องถัดจากชื่อแล้วคลิกที่ 'ติดตั้งปลั๊กอิน'

ขั้นตอนที่ 8: ลงทะเบียนเลเยอร์ในตัวจัดการเวลา

คุณควรเห็นแผงควบคุมเวลาใต้ผืนผ้าใบแผนที่ของคุณ คลิกที่ปุ่ม 'การตั้งค่า' จากนั้นคลิก 'เพิ่มเลเยอร์' ระบุชื่อของเลเยอร์เส้นทางของคุณเลือกแอตทริบิวต์ 'เวลา' สำหรับเวลาเริ่มต้นและเลือก 'ไม่มีเวลาสิ้นสุด ... ' สำหรับเวลาสิ้นสุด

เพิ่มเลเยอร์ในตัวจัดการเวลา

ขั้นตอนที่ 9: ส่งออกวิดีโอ

เลือกขนาดกรอบเวลาที่เหมาะสมสำหรับข้อมูลของคุณ (แต่ละเฟรมจะแสดงระยะเวลานี้) คลิกปุ่มเล่นเพื่อทดสอบการตั้งค่า คลิกปุ่ม 'ส่งออกวิดีโอ' เพื่อส่งออก (หากคุณเล่นภาพเคลื่อนไหวตรวจสอบให้แน่ใจว่าคุณเลื่อนตัวเลื่อนกลับไปที่ตำแหน่งเริ่มต้นก่อน) หากคุณใช้ Windows คุณจะสามารถส่งออกภาพเป็นชุดได้ (อย่างน้อยเป็นรุ่น 2.2.4) ไม่เป็นไรเราสามารถใช้เครื่องมืออื่นเพื่อรวมเข้ากับวิดีโอ

ขั้นตอนที่ 10: รวบรวมเป็นภาพเคลื่อนไหว

คัดลอกเนื้อหาของโฟลเดอร์ output และวางลงใน Windows Movie Maker (หรือเครื่องมืออื่น ๆ ที่ต้องการ) เลือกรูปภาพทั้งหมด (คลิกที่ภาพหนึ่งจากนั้นกด Ctrl + A เพื่อเลือกทั้งหมด) คลิกที่เมนูแก้ไขและตั้งระยะเวลาในการแสดงภาพอย่างเหมาะสม (ประมาณ 0.1 วินาทีต่อเฟรม) ใช้ไฟล์> บันทึกภาพยนตร์เพื่อบันทึกในรูปแบบที่เหมาะสม

ส่งออกภาพยนตร์

ผลลัพธ์ควรมีลักษณะเช่นนี้ (แปลงเป็นไฟล์ GIF หลังจากนั้น):

ผล

ฉันไม่มีเทคนิคที่ดีในการติดตามเส้นและปรากฎตัวแผนที่ อาจต้องมีการสร้างปลั๊กอินหรือสคริปต์ QGIS ใหม่หรืออาจแก้ไขปลั๊กอิน Time Manager เพื่อจัดตำแหน่งผืนผ้าใบตรงกึ่งกลางของจุดปัจจุบันสำหรับแต่ละเฟรม คุณสามารถประมาณเอฟเฟกต์ใน Windows Movie Maker ได้โดยใช้ภาพเคลื่อนไหวแพนและซูมในเมนูภาพเคลื่อนไหว ซอฟต์แวร์วิดีโออื่น ๆ อาจมีฟังก์ชันที่ดีกว่าสำหรับการติดตามองค์ประกอบที่เคลื่อนไหว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.