Konversi .shp ke .gpx menggunakan QGIS?


34

Saya ingin mengonversi .shp menjadi .gpx.

Menggunakan GIS, saya membuka shapefile saya dan saya mencoba untuk "save as" gpx tetapi memberikan kesalahan OGR:

pembuatan field ObjectId gagal (kesalahan OGR: Bidang nama 'ObjectId' tidak didukung dalam skema GPX. Gunakan opsi pembuatan GPX_USE_EXTENSIONS untuk memungkinkan penggunaan elemen).

Bagaimana saya bisa memperbaiki kesalahan ini?


Saya mencoba ini di PC lain dengan OS yang sama dan berfungsi! Andre Joost benar! Saya masih tidak tahu mengapa ini bekerja di sini dan tidak berfungsi di PC lain. Haruskah saya menginstal driver GPX ?? : | Terima kasih André Joost!
ePascoal

dalam situasi seperti itu, di mana kesalahan menyebutkan parameter atau pengaturan yang tidak Anda kenal, periksa halaman format GDAL atau OGR terkait untuk driver yang Anda gunakan, misalnya GPX . Dalam beberapa skenario, Anda tidak ingin menerapkan opsi secara membabi buta karena dapat merusak data Anda. Kasus-in-point, Anda akan tidak ingin indiscriminantly berlaku -skipfailuresdi ogr2ogrtanpa meneliti mengapa itu gagal di tempat pertama.
elrobis

Jawaban:


30

Lakukan saja apa yang diperintahkan kepada Anda: Di Data sourcebidang, masukkan

GPX_USE_EXTENSIONS=YES

atau centang "lewati pembuatan atribut" di bawahnya (atau apa namanya dalam bahasa Anda).

Di Layerbidang, Anda mungkin juga masuk

FORCE_GPX_TRACK=YES

untuk mendapatkan trek, bukan rute.


Terima kasih, ini benar-benar berfungsi, tetapi ketika saya mengonversi shp ke gpx saya kehilangan bidang Id saya. Semua bidang gpx saya adalah nol. Bagaimana saya bisa menghubungkan bidang "id" saya (file shp) ke bidang "nama" (file gpx).
ePascoal

5
Saya khawatir ini tidak mungkin diekspor. dimungkinkan dengan ogr2ogr.exe dari paket gdal: ogr2ogr -f GPX -dsco GPX_USE_EXTENSIONS = TANPA shpexport.gpx D: \ path \ to \ your \ test.shp -lco FORCE_GPX_TRACK = YA -sql "SELECT id AS name FROM layername "
AndreJ

2
Anda bisa menggunakan plugin table manager untuk mengganti nama bidang id di shapefile menjadi "name" sebelum mengekspor dan mengubahnya kembali sesudahnya. Jika perlu, Anda harus menambahkan pyqgis.org/repo/contributed ke daftar repositori Anda.
AndreJ

1
saya mencoba mengubah nama bidang id di shapefile menjadi nama sebelum mengekspor tetapi tidak berhasil. saya mencari aplikasi yang menambahkan aplikasi python bernama PostGPS, tetapi tidak berfungsi. Saya mencoba dengan ogr2ogr menggunakan skrip Anda juga tanpa hasil: / Apakah saya melakukan sesuatu yang salah. Adakah kemungkinan solusi lain?
ePascoal

Aneh, itu bekerja di sini. Anda harus mengatur "GPX_USE_EXTENSIONS = YA" di bidang atas dialog Simpan Sebagai. Dengan kotak centang itu tidak berfungsi. Untuk ogr2ogr, Anda harus menggunakan nama pengguna, tidak perlu sama dengan nama shapefile.
AndreJ

1

Atau, Anda dapat mencoba langkah-langkah berikut:

  1. Buka file SHP Anda dengan QGIS
  2. Pilih layer SHP Anda
  3. Lapisan> Simpan sebagai ...> GPX

1

Satu trik sederhana berhasil untuk kita. Dalam file csv utama, bidang pertama (ID / label) harus dinamai 'nama'. dan kemudian impor file itu dan simpan sebagai .gpx


0

Anda juga dapat menggunakan DNRGarmin dari departemen Minnisota Sumber Daya Alam. Ini adalah alat gratis dan memungkinkan Anda melakukan banyak impor dan ekspor untuk data GPS


0

Anda bisa memaksa:

GPX_USE_EXTENSIONS=YES

Seperti ditunjukkan di atas. Namun, jika Anda tidak memahami atau mengelola proyeksi Anda, maka Anda akan mengalami masalah tambahan. Anda akan menemukan kesalahan dalam data - ketidaktepatan di titik atau trek jika CRS Anda berbeda dari apa yang diproyeksikan di shapefile Anda atau bagaimana ruang kerja Anda diproyeksikan; WGS84 diperlukan untuk unit GPS.

Solusi terbaik yang saya temukan adalah memilih "Lapisan proyek ulang" dari kotak peralatan pemrosesan Anda. Ini memberi Anda opsi untuk mengonversi banyak lapisan sekaligus, memproyeksikan ulang data dengan benar, dan menyimpan sebagai file gpx.Proyeksi ulang layer menjadi gpx

Satu-satunya masalah yang belum saya pelajari untuk dipecahkan adalah bagaimana mempertahankan label. Saya berharap bahwa seseorang mungkin tahu bagaimana atau punya trik untuk melakukan ini - sepertinya bukan pilihan. Saya harus menggunakan perangkat lunak Garmin BaseCamp yang kikuk untuk mengklik dan merevisi label satu per satu atau masuk ke kode gpx dan mengetikkan kode secara manual - keduanya memakan waktu.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.