ตกลงนี่คือ Python ที่ฉันเคยทำ:
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)
ก่อนที่จะเรียกใช้รหัสข้างต้น:
- เลือกเลเยอร์ที่คุณต้องการแก้ไข
- สลับการแก้ไขบน;
- เลือกคุณสมบัติในเลเยอร์นี้ที่คุณต้องการย้อนกลับ
เรียกใช้รหัสหลามข้างต้นโดย:
- ไปที่ปลั๊กอิน> Python Console;
- คัดลอกและวางรหัสลงในหน้าต่าง
- กด Enter 2x เพื่อเรียกใช้
มันควรจะส่งออก "จริง" สำหรับแต่ละคุณสมบัติที่มีการสลับทิศทาง หากมันแสดงผลเป็น "เท็จ" มันจะไม่สลับทิศทางของคุณสมบัตินั้น สิ่งนี้จะเกิดขึ้นหากเลเยอร์ไม่ได้เปิดใช้งานการแก้ไข
ค่อนข้างง่าย!
ฉันได้รวมไว้ในปลั๊กอินที่เรียกว่าSwap Line Direction
และมันมีอยู่ในตัวติดตั้งปลั๊กอิน QGIS
ปลั๊กอินนี้ไม่สามารถใช้งานได้อีกต่อไป (ตั้งแต่วันที่ 11/16/2558) ในเครื่องมือติดตั้งปลั๊กอิน แต่คุณสามารถสร้างปลั๊กอินของคุณเองได้อย่างง่ายดายด้วยปลั๊กอิน " เครื่องมือสร้างปลั๊กอิน"
ฉันจะดูว่ามันง่ายที่จะรวมเข้ากับ fTools