Gunakan kalkulator lapangan untuk memeriksa persimpangan
Tujuan utama
Saya berencana untuk mengambil atribut dari lapisan menggunakan kalkulator lapangan di mana mereka berpotongan dengan geometri.
Langkah saat ini
Memeriksa apakah arus $geometry
berpotongan dengan lapisan yang diinginkan.
Apa yang saya coba
intersects($geometry,collect_geometries('Layer'))
- dan variasi map_get
. Karena saya baru belajar bahwa intersects
geometri yang diketahui harus diberikan, sementara saya ingin memeriksa JIKA ada geometri pada lapisan, saya sebenarnya bingung. Saya tidak tahu cara memeriksa persimpangan menggunakan kalkulator lapangan.
Jika ini tidak memungkinkan menggunakan kalkulator lapangan, mungkinkah Python?
Jawaban
Anggaplah Anda memiliki lapisan dengan poligon yang berisi atribut "nama": pada tangkapan layar di bawah, bidang nama ini memiliki nilai A, B, C, D, E dan F (poligon diberi label).
Kami selanjutnya memiliki lapisan garis dan kami ingin mendapatkan nama poligon yang garisnya berpotongan. Sejak QGIS 3.16 (lihat log perubahan visual ; untuk versi QGIS yang lebih lama mungkin Plugin RefFunctions yang direferensikan di sana dapat membantu), ada ekspresi-hamparan baru. Kita dapat menggunakan salah satunya untuk memberi label pada garis dengan nama poligon yang dipotongnya. Dengan cara yang sama, ekspresi tersebut dapat digunakan dalam kalkulator bidang untuk menghasilkan bidang baru (bahkan bidang virtual untuk penghitungan dinamis):
array_to_string (
overlay_intersects (
'Polygons',
name
)
)
