Ok đây là Python mà tôi đã từng làm nó:
layer = qgis.utils.iface.mapCanvas().currentLayer()
for feature in layer.selectedFeatures():
geom = feature.geometry()
nodes = geom.asPolyline()
nodes.reverse()
newgeom = QgsGeometry.fromPolyline(nodes)
layer.changeGeometry(feature.id(),newgeom)
Trước khi chạy đoạn mã trên:
- Chọn lớp bạn muốn chỉnh sửa;
- Chuyển đổi Chỉnh sửa trên;
- Chọn các tính năng trong lớp này bạn muốn đảo ngược.
Chạy mã python ở trên bằng cách:
- Truy cập Plugins> Bảng điều khiển Python;
- Sao chép và dán mã vào cửa sổ;
- Nhấn Enter 2x để chạy.
Nó sẽ xuất "True" cho mỗi tính năng có hướng được hoán đổi. Nếu nó xuất ra "Sai" thì nó đã không trao đổi hướng của tính năng đó. Điều này sẽ xảy ra nếu lớp không có Chỉnh sửa được bật.
Khá dễ dàng!
Tôi đã gói nó trong một plugin có tên Swap Line Direction
và nó có sẵn trong trình cài đặt plugin QGIS.
Plugin này không còn khả dụng (kể từ ngày 16/11/2015) trong trình cài đặt plugin nhưng bạn có thể tự xây dựng khá dễ dàng với plugin " Plugin Builder ".
Tôi sẽ xem xét việc kết hợp với fTools dễ dàng như thế nào.