Estoy escribiendo un guión en pyQGIS, que emularan la medición de una línea por "caminar" a lo largo de ella con una brújula con longitud constante. Tengo un problema con el Clip algoritmo de procesamiento del módulo, es decir, que devuelve None, independientemente de si puedo añadir capas como entradas o funciones seleccionadas. ¿Qué hago mal? Yo creo, que si en el resultado del clip en una capa vacía, todavía estaría allí, sólo vacío? A continuación es el trozo de código con problemas,
while d.measureLine(QgsPoint(coorFin[0],coorFin[1]),QgsPoint(coor[0],coor[1]))>step: # If the distance between current and last point is more than chosen step
# Create buffer polygon around a point
bufCirc = point.geometry().buffer(step,10) # do a buffer from existing point
buforek = QgsFeature()
buforek.setGeometry(bufCirc)
# Create layer and put the polygon inside
bufferLayer = QgsVectorLayer("Polygon", "temporary_polygons", "memory")
pz = bufferLayer.dataProvider()
bufferLayer.setCrs(my_crs)
pz.addFeatures([buforek])
bufferLayer.commitChanges()
# select the buffer
buforSel = bufferLayer.setSelectedFeatures([buforek])
# Clip coastline with the buffer
liniaWarstwa = processing.runandload("qgis:clip", selectedCoastLine, buforSel, "memory:liniaWarstwa")
print liniaWarstwa
layer = QgsMapLayerRegistry.instance().mapLayersByName("memory:liniaWarstwa")[0]
Las impresiones de impresión "ninguno", QgsMapLayerRegistry dice "índice fuera de rango".