Memodifikasi titik awal / akhir LineString dan menjaga konektivitas di OpenLayers

8

Saya sedang mengembangkan aplikasi di mana pengguna dapat melihat dan mengedit kisi-kisi jalan kota. Jalan-jalan disajikan sebagai fitur pada layer vektor, dan pengguna harus dapat memodifikasi elemen (baik atribut dan geometri - yang merupakan LineString - dari fitur). Pengeditan geometri terbatas untuk menyeret titik akhir LineString, setidaknya untuk saat ini.

Caranya adalah bahwa titik akhir baru harus bersinggungan dengan geometri fitur saat ini, sehingga pengguna tidak dapat menyeret jalan untuk memulai dari luar kotak jalan. Juga, memodifikasi geometri harus memengaruhi geometri tetangga, jika ada. Artinya, jika jalan lain dimulai di mana seseorang berakhir, keduanya harus memiliki titik awal / akhir berubah.

Saya tidak mengira OpenLayers mendukung ini di luar kotak, jadi bagaimana saya harus mulai menerapkan ini?

mrLite
sumber
apakah Anda mencoba menggunakan gertakan dengan openlayers?
Aragon
Saya percaya seseorang hanya dapat beralih ke elemen lain, bukan ke "dirinya sendiri". Namun, saya kira itu mungkin untuk sementara mengkloning fitur ke lapisan vektor lain, menggunakan fitur gertakan untuk mengambil klon ke fitur aslinya dan kemudian mengkloning kembali fitur yang dimodifikasi ke lapisan asli. Itu tidak akan menyelesaikan masalah dengan memodifikasi geometri tetangga.
mrLite
Ini pertanyaan yang bagus. Suara positif.
Magno C
Saya dulu menggunakan editor khusus kode berkode yang bisa melakukan ini dan itu menggunakan perpustakaan open source, yang mana saya tidak tahu, sayangnya. Itu sangat berguna, digunakan oleh perusahaan bernama GDT
lewis

Jawaban: