Saya telah berupaya mengimplementasikan skrip voronoi.py (terjemahan Bill Simon tentang kode Steve Fortune). Menurut tautan QGIS pada dasarnya ini adalah kode yang sama dengan yang saya kerjakan, tetapi cara untuk menghasilkan poligon yang dapat diperluas hingga tak terbatas berbeda antara keduanya. Dalam kasus QGIS, saya berasumsi bahwa beberapa persegi panjang pembatas dihasilkan pada batas tertentu di luar batas titik situs. Dalam kasus saya, saya membuat titik situs palsu sebagai lingkaran yang mengelilingi titik situs menarik. Titik lingkaran memiliki jari-jari dua kali diameter dari luas titik situs. Hasil antara keduanya ditunjukkan pada gambar terlampir, implementasi QGIS di sebelah kiri dan implementasi saya di sebelah kanan. .
Seperti yang dapat dilihat, implementasi QGIS menghasilkan poligon aneh yang tidak memiliki poin situs (lihat situs 473 sebagai contoh dalam kedua implementasi). Ini jelas salah, tetapi saya tidak yakin apakah implementasi saya juga benar. Karena saya tidak memiliki akses ke lisensi ArcInfo untuk ArcMap, saya tidak bisa membandingkannya dengan apa yang dihasilkan ArcMap secara asli dan saya tidak bisa melihat cara untuk melampirkan shapefile titik situs untuk diuji seseorang. Jadi, jika ada yang punya komentar tentang penggunaan "lingkaran infinity" saya untuk membantu memaksa poligon tepi versus "persegi panjang infinity", saya akan sangat menghargainya. Lebih baik lagi, jika ada yang tertarik untuk menguji output pada beberapa platform GIS lain saya dapat memberikan shapefile dari poin situs yang saya gunakan.
Tampaknya bagian dari masalahnya adalah bahwa poligon di luar titik situs tumpang tindih, jadi ketika disimbolkan tanpa isian, maka muncul poligon yang berbeda. Gambar berikut menunjukkan apa yang terjadi ketika poligon tentang situs 473 dan 415 dipilih. Jadi pertanyaan aslinya tetap ada, tetapi ada kerutan baru.
Ini adalah bug (atau "ketidaklengkapan"), hasil yang benar di QGIS jika buffer 0% digunakan. Yang masih perlu dipecahkan adalah apakah pola padat "titik infinity" melingkar akan menghasilkan hasil yang sama dengan "tepi infinity" persegi panjang.
sumber
Jawaban:
Saya dapat mengkonfirmasi bahwa implementasi saya paling tidak sebanding dengan ArcGIS (tetapi memerlukan lisensi ArcInfo). Implementasi QGIS salah karena jarak buffer digunakan. Bagi mereka yang menggunakan ArcGIS dengan lisensi ArcView, toolset untuk Voronoi dan / atau Delaunay dapat ditemukan sebagai Triangulation Tools .
sumber