Usando NNJoin-Plugin a través de la consola de Python

Aug 24 2020

Quiero escribir un script de Python que pueda ejecutar desde QGIS 2.18 (desde la consola de Python).

El script de Python debería calcular la línea más cercana (de un conjunto de líneas) de un punto dado (de un conjunto de puntos) y ya he logrado esta tarea usando manualmente el NNJoin-Plugin. Ahora quiero automatizar este proceso dentro de un script de Python, pero no sé cómo ejecutar el complemento NNJoin dentro de un script de Python.

¿Es esto siquiera posible? Si es así, ¿podría darme algún consejo sobre cómo lograrlo?

Respuestas

1 Taras Aug 24 2020 at 18:49
>>> from qgis import utils
>>> theplugin = utils.plugins['NNJoin']
>>> dir(theplugin)

Eso te dará

['NNJOIN', 'NNJOINAMP', '__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', '__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '__weakref__', 'dlg', 'iface', 'initGui', 'nnj_action', 'plugin_dir', 'run', 'toolbar', 'tr', 'unload']

Referencias:

  • ¿Se pueden exponer variables a la consola de Python desde un complemento en QGIS?
  • Cómo mostrar la consola Python al iniciar el programa QGIS
  • ¿Accediendo a los complementos de QGIS en Python?
  • Llamar al complemento de interpolación desde la consola Python de QGIS
  • Cómo ejecutar el complemento QGIS desde el script de Python