Ini mungkin pertanyaan sepele, tapi saya bingung, apa perbedaan antara geometri dan $ geometri di QGIS? Saya tidak menemukan contoh menggunakan fungsi ini.
Khususnya saya tertarik pada geometri, dalam hal apa itu membantu?
Tepat di sebelah daftar fungsi tangkapan layar Anda, haruslah dokumentasi fungsi yang saat ini dipilih. Bagi saya, dengan 2.18.12 yang berbunyi:
$ geometry Mengembalikan geometri fitur saat ini. Dapat digunakan untuk memproses dengan fungsi lain.
geometry Mengembalikan geometri fitur.
Ini seperti perbedaan metode versus fungsi dalam pemrograman berorientasi objek. $ geometri ini / diri 's geometri. Anda dapat menganggapnya lebih seperti atribut atau properti.
geometri di sisi lain mengharuskan / memungkinkan Anda untuk mengirimkan fitur dan akan mengembalikan geometri yang sesuai. Seperti yang ditunjukkan oleh dokumentasi, Anda dapat menggunakan ini untuk mendapatkan geometri dari pemilihan fitur berbasis atribut:
geometry(
get_feature(layer, attributeField, value)
)
Apa lagi yang dapat Anda lakukan dengan itu hanya dibatasi oleh kreativitas Anda dan sumber-sumber fitur untuk diteruskan. :)
$geometry
agak variabel (const), terlepas dari apakah OO atau tidak.$geometry
mengembalikan geometri fitur saat ini seperti padageom_to_wkt($geometry)
geometry
mengembalikan geometri fitur tertentu seperti padageom_to_wkt(geometry(get_feature('my_layer', 'my_feature', feature_id)))
Anda akan menggunakan kasus kedua jika Anda ingin, misalnya, untuk memproses fitur saat ini terhadap fitur tertentu:
intersects($geometry,geometry(get_feature(layer,attributeField,value)))
sumber