3
เป็นไปได้หรือไม่ที่จะใช้เลเยอร์หน่วยความจำในอัลกอริทึมการประมวลผล QGIS?
ฉันกำลังสร้างปลั๊กอิน QGIS ที่เชื่อมต่อกับฐานข้อมูล MySQL ในเครือข่ายท้องถิ่นแล้วเพิ่มส่วนย่อยของหนึ่งในตารางไปยังเลเยอร์ในหน่วยความจำ เซตย่อยจะขึ้นอยู่กับสกุลเงินของข้อมูล (ทำการสังเกตล่าสุดสำหรับแต่ละตำแหน่งที่ทำการวัดเท่านั้น) สร้างเลเยอร์หน่วยความจำนี้สำเร็จ อย่างไรก็ตามฉันต้องการเรียกใช้อัลกอริทึมการประมวลผลทางภูมิศาสตร์บางอย่างและฉันมีปัญหาในการใช้เลเยอร์ในหน่วยความจำในส่วนใด ๆ ของพวกเขา self.stationuri = "point?crs=epsg:4326&field=id:integer&field={}:double&index=yes".format(self.cb_field.currentText()) self.vlayer = QgsVectorLayer(self.stationuri,"scratch","memory") if not self.vlayer.isValid(): raise Exception("Failed to create in-memory layer") self.vlayer.startEditing() for i,r in enumerate(result): # Result is row-by-row result of SQL query # Add features ... self.vlayer.commitChanges() self.vlayer.updateExtents() # Add layer to map …