เลเยอร์หน่วยความจำสามารถใช้เป็นอินพุทและ / หรือเอาท์พุทที่มีRunalg ได้หรือไม่?
ด้วยrunandloadฉันสามารถใช้งานได้:
processing.runandload("qgis:mergevectorlayers","memory:bufferOne", "memory:bufferTwo", r"memory:merged")
processing.runandload("qgis:dissolve", r"memory:merged", True, '', r"D:\PythonTesting\dissolved.shp")
พารามิเตอร์ 2 และ 3 เป็นเลเยอร์อินพุตซึ่งอยู่ในหน่วยความจำแล้วและพารามิเตอร์ 3 คือเลเยอร์เอาต์พุตซึ่งถูกเขียนลงในหน่วยความจำและใช้ในเครื่องมือต่อไปนี้ (ละลาย) มันใช้งานได้ดี แต่เมื่อฉันพยายามใช้ตรรกะเดียวกันกับrunalgแล้วเลเยอร์ที่ผสานของฉันในหน่วยความจำดูเหมือนจะไม่ถูกสร้างขึ้นเนื่องจากเครื่องมือ Dissolve ไม่เคยทำงาน ตัวอย่างเช่นต่อไปนี้จะไม่ทำงาน:
processing.runalg("qgis:mergevectorlayers","memory:bufferOne", "memory:bufferTwo", r"memory:merged")
processing.runandload("qgis:dissolve", r"memory:merged", True, '', r"D:\PythonTesting\datenschrott\dissolved.shp")
ฉันสามารถสันนิษฐานได้ว่าrunalgไม่ยอมรับเลเยอร์ที่อยู่ในหน่วยความจำหรือไม่สามารถส่งออกได้หรือไม่?