[QGIS-es] Problemas con PyQGIS al crear renderizador basado en reglas

Jorge Tornero jtorlistas en gmail.com
Vie Feb 7 03:33:31 PST 2020


Buenos días:

Estoy en otro berenjenal con PyQGIS consistente en crear la simbología para
una capa de puntos con simbología basada en reglas programaticamente.

La idea básica de cómo hacerlo la he sacado de por aquí y  por allá, pero
donde más pistas he obtenido es desde aquí:

https://snorfalorpagus.net/blog/2014/03/04/symbology-of-vector-layers-in-qgis-python-plugins/

No obstante, como mi idea era crear antes la capa con la información desde
una base de datos Posgres (eso es bastante más sencillo), he supuesto que
la mejor manera de hacerlo es creando una subclase de QgsRuleBasedRederer.
He creado el código que podéis ver aquí

https://gist.github.com/jtornero/94eb377cf4b82a9a4dcd3475ad2f6aa2

El invento funciona como se espera, es decir, crea el renderizador con su
simbología y sus reglas.

El problema es que cuando creo una instancia en la consola para luego
añadir el renderizador a una capa,
QGIS se queda congelado y termina por morir. En el gist hay un anexo con la
salida de QGIS al ejecutarse

ren=RenderNASC('#aabbcc',1101) --> Y después casca

De hecho, se ve la salida de depurado del código de la clase (vamos, va
imprimiendo las etiquetas correspondientes a cada regla), pero entonces es
cuando QGIS se cuelga

Creo que puede ser debido a algo relaciado con cómo creo los símbolos, pero
se me escapa totalmente.

Cualquier ayuda será apreciada, un saludo

Jorge
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://lists.osgeo.org/pipermail/qgis-es/attachments/20200207/e7e9ad62/attachment.html>


Más información sobre la lista de distribución QGIS-es