Dalam proyek saya, saya menggunakan banyak geodata dari direktori yang berbeda. Sekarang saya ingin memberikan proyek QGIS kepada seorang kolega (misalnya pada CD).
Apakah mungkin untuk menyalin bentuk dari direktori yang berbeda secara otomatis ke satu direktori?
Jawaban:
Anda sedang mencari plugin QConsolidate , yang berfungsi dengan sangat baik. Ini akan mentransfer semuanya ke direktori tunggal dan menulis ulang file proyek .QGS (file XML) untuk menunjuk ke lokasi sumber baru.
QConsolidate masih terdaftar sebagai percobaan - Anda harus mengaktifkan "Tampilkan juga plugin eksperimental" di dialog pengaturan.
Namun - ini bekerja dengan sangat baik. Catatan:
sumber
Saya baru saja menguji tiga plugin yang mencoba melakukan apa yang Anda minta pada file proyek dengan berbagai format berbasis file. Inilah hasilnya:
Plugin yang diuji adalah:
Pengujian dijalankan pada QGIS 2.18.14 64bit pada Windows 10
Ketiga plugin menangani shapefile tanpa masalah, memindahkan data ke direktori target dan membuat proyek yang mereferensikan salinan lokal dari dataset.
QCkonsolidasi
QPackage
relokator
Dari ketiganya, QPackage tampaknya bekerja paling baik. Koneksi basis data dan lapisan layanan web tidak diuji.
sumber
Saya tidak tahu tentang cara di QGIS itu sendiri, tetapi file proyek (.qgs) hanyalah file teks. Oleh karena itu cara primitif tetapi efektif adalah menyalin semua secara manual ke satu direktori, kemudian mengubah
<datasource></datasource>
tag dalam file .qgs baik menggunakan find dan replace atau ekspresi reguler untuk menunjuk ke direktori baru.Jika Anda punya banyak file / direktori yang berbeda, satu opsi adalah mengotomatiskannya dengan python dengan mencari setiap tag di file .qgs, menyalin setiap file terkait dengan nama itu ke direktori, dan kemudian mengganti .qgs tag dengan direktori baru.
sumber
Sekarang ada juga plugin relocator baru . (ditandai sebagai eksperimental juga saat ini). Memberi Anda kesempatan untuk menyimpan semua lapisan dengan file proyek ke dalam satu direktori atau bahkan dalam file zip.
sumber