Bạn có thể viết phương trình của mình trong một hàm mới, và sau đó bạn sẽ chỉ phải gọi hàm để áp dụng lại tính toán.
Mở máy tính trường, bấm vào Function Editor
tab, new file
sau đó chỉnh sửa chức năng. Chọn load
. Lưu ý rằng ok
sẽ không có sẵn tại thời điểm này.
Quay trở lại Expression
tab, chọn custom
nhóm chức năng và nhấp đúp chuột vào chức năng của bạn. Chọn trường cần cập nhật và nhấn ok
.
Nếu bạn muốn chỉ sử dụng các giá trị trường và hằng số, bạn có thể chỉnh sửa chữ ký hàm mặc định, bắt đầu bằng value1
. Trong ví dụ của tôi, tôi đã loại bỏ nó, nhưng bạn có thể sử dụng (các) trường này để truyền các đối số mới.
Sau đó, bạn có thể truy cập các giá trị trường tính năng bằng cách sử dụng feature["fieldName"]
.... hãy cẩn thận để gọi hàm này chỉ trên các lớp có chứa các trường đã nói!
@qgsfunction(args='auto', group='Custom')
def funcTestCalc( feature, parent):
return feature["fieldA"]+feature["fieldB"];