Saya memiliki polyline yang dibagi menjadi beberapa bagian dan bagian-bagian ini tidak tertata dengan baik sehingga ID vertex tidak mengikuti plot polyline.
Polyline ini merupakan jalur bus yang mewakili dan saya harus memiliki plot mengikuti cara mengemudi bus. Saya ingin tahu cara menggabungkan multipart dari polyline ini?
Saya sudah mencoba untuk Berpisah dan Tidak Terpisah, serta Multipart ke Bagian Tunggal, Gabungan, Penggabungan, dll. Tetapi tidak ada yang memberi saya hasil yang saya inginkan.
Jawaban:
Saya melihat dari tag Anda bahwa Anda menjalankan ArcGIS 10. Saya telah menggunakan metode berikut untuk tugas yang serupa:
1) Gunakan Multipart ke Satu Bagian
2) Gunakan Unsplit
Agar ini berfungsi (yaitu agar Anda memiliki garis dalam urutan yang tepat), Anda mungkin perlu memecah garis menjadi titik akhir konstituen dan kemudian mengubah arah berdasarkan atribut (misalnya 1 = mulai, 2 = ujung) - Anda dapat menggunakan ini untuk menghubungkan secara kondisional hanya titik-titik yang berbeda (Jika 1 + 2 maka buat garis penghubung).
Jika Anda bekerja dengan IDE, kode untuk melakukan ini cukup panjang, tetapi saya akan melakukan yang terbaik untuk membantu jika Anda memiliki pertanyaan spesifik.
sumber
Saya harus melakukan hal yang persis sama beberapa waktu lalu menggunakan AV 3.x dan Avenue. Saya sempat melihat-lihat kodenya tetapi tidak bisa menemukannya. Jika saya ingat dengan benar, logikanya kira-kira seperti ini: (Saya juga memiliki halte dan terminal sebagai titik pembentuk yang berbeda sehingga saya dapat menentukan bagian awal dan akhir):
Untuk mendapatkan bagian pertama:
2a. Dapatkan bagian yang paling dekat dengan terminal mulai
2b. Dapatkan jarak titik mulai dan titik akhir bagian ini ke terminal mulai. Jika titik awal adalah yang paling dekat tambahkan bagian ini ke 'polyline yang diurutkan'. Jika ini akhir, FLIP, lalu tambahkan.
... atau semacam itu! :-)
Beri tahu saya jika ini masuk akal bagi Anda dan saya dapat mencoba lagi menemukan kode Avenue asli saya.
sumber
Saya bekerja di proyek yang mirip dengan ini, saya menggunakan ArcObjects. Tujuan saya adalah menghubungkan dua polyline yang berdekatan jika salah satu titik akhirnya adalah titik awal yang lain untuk membuat dua polyline pendek menjadi satu polyline. Proses saya adalah:
Kedua kelas menimpa metode "Equals" dan "GetHashCode".
Dengan proses ini saya membuat dua kamus. Setelah membuat kamus, saya memeriksa apakah kedua kamus berisi titik yang sama dan di kedua kamus, kunci itu hanya memiliki satu fitur dalam daftar fitur, kemudian saya membuat polyline baru dengan dua polyline tersebut dan menghapus dua polyline pendek.
Untuk menggabungkan dua polyline menjadi satu:
sumber
Saya memiliki masalah yang persis sama karena pembaruan yang saya buat ke rute bus menggunakan Alat "Ubah Bentuk". Dissolve, Merge dan Unsplit tidak berfungsi karena fitur multi-bagian tidak bersamaan.
Jika Anda belum melihat ini sekarang, lihat lebih dekat pada simpul yang harus bertepatan antara fitur multi-bagian Anda. Perluas, rapikan, atau bentuk ulang seperlunya dan gunakan salah satu alat yang disebutkan di atas.
sumber