Saya memiliki satu set poin yang ingin saya ubah menjadi poligon.
Saya mencoba cekung lambung tetapi tidak mendapatkan poligon yang dimaksud seperti yang Anda lihat di bawah,
Dan ketika saya menggunakan Denaulay Triangulation saya perlu menghapus segitiga luar.
Apakah ada cara efisien untuk melakukan hal yang sama?
Saya juga mencoba Convex hull.
qgis
qgis-processing
polyline-creation
Stephen Jacob
sumber
sumber
Jawaban:
Saya berasumsi bahwa Anda tahu poin mana yang menjadi milik "kiri" atau "kanan", karena jika tidak ada banyak solusi. Jika demikian, Anda bisa menggunakan triangulasi delaunay diikuti dengan pemilihan segitiga "sentral". Dengan metode ini, tidak perlu memiliki poin dalam urutan tertentu. Yang perlu Anda pertimbangkan adalah fakta bahwa segitiga yang Anda butuhkan harus menyentuh setidaknya satu titik dari setiap sisi.
sumber
Saya memiliki hasil yang sama dengan @radouxju.
Operasi :
Pertahankan titik pemilihan dan pilih segitiga delaunay yang memotong titik-titik yang dipilih ini [alat kueri spasial]
Balikkan pemilihan titik atau pilih titik-titik yang memotong polyline lainnya [seleksi dengan ekspresi] atau [seleksi terbalik]
Hapus dari seleksi saat ini segitiga delaunay yang terpisah dengan poin lain [alat kueri spasial]
PENTING : Anda HARUS memiliki polyline untuk mendapatkan hasil ini!
sumber
Jika Anda memiliki pengalaman dengan python, Anda bisa menggunakan pustaka Shapely dan membuat Polygon dari titik-titik di dua baris. Anda harus memberi tahu python apa titik awal dan akhir dari kedua baris tersebut.
Bahkan lebih baik: Anda juga dapat menggunakan geopanda untuk melakukan ini. geopanda memungkinkan Anda untuk dengan mudah menyimpan ke berbagai format termasuk shapefile
Anda dapat membaca geometri garis menggunakan fungsi geopandas gpd.read_file ().
Urutan simpul poligon pada GIS umum: searah jarum jam atau berlawanan arah jarum jam
https://nbviewer.jupyter.org/gist/rutgerhofste/b01c17aa6851ea577f10c21a4c3717bc
sumber