Vous avez différentes façons d'obtenir ce que vous voulez avec la console PyQGIS:
- Suggestion d'Aragon;
- en utilisant la classe QgsGeometryAnalyzer:
from qgis.utils import iface
from qgis.analysis import QgsGeometryAnalyzer
mc = iface.mapCanvas()
layer = mc.currentLayer()
QgsGeometryAnalyzer().buffer(layer, "path_to/output.shp", 500, False, False, -1)
- en utilisant la classe Sextante:
from sextante.core.Sextante import Sextante
Sextante.runalg("ftools:fixeddistancebuffer","input_path.shp", False, 500, 5, True, "output_path_buffer.shp")
Pour obtenir les paramètres sextante, tapez Sextante.alghelp("ftools:fixeddistancebuffer")
dans la console PyQGIS.
J'espère que cela t'aides !
Juste une petite chose à ajouter à la dernière réponse.
Pour rechercher un algorithme SEXTANTE sur un sujet donné, utilisez Sextante.alglist (). Par exemple, dans le cas de la recherche de quelque chose contenant "tampon", vous feriez
Et vous obtiendriez:
De cette façon, vous pouvez trouver le nom de l'algorithme à appeler (ftools: fixeddistancebuffer, dans l'exemple proposé dans la réponse ci-dessus)
Vous pouvez transformer votre script en un nouvel algorithme dans SEXTANTE. La documentation SEXTANTE contient des informations détaillées à ce sujet.
la source