Posible duplicado:
¿Cómo se diseña una capa desde la consola?
Estoy tratando de establecer los estilos para una capa vectorial cargando el archivo .qml en la consola python. El archivo de estilo qml- contiene todas las categorías y símbolos necesarios, pero no encuentro la función correcta para cargar el archivo qml. El QgsCategorizedSymbolRendererV2::create(domElement) parece no estar disponible en la consola python (QGIS 1.8.0). ¿Es myRenderer.load(doc.documentElement()) la función correcta a utilizar?
¡Gracias!
Stefan
#load the xml
xmlfile = QtCore.QFile("qgis-layer-style.qml")
doc = QtXml.QDomDocument( "Categories" )
if xmlfile.open(QtCore.QIODevice.ReadWrite | QtCore.QIODevice.Text) == 0:
print "cannot open file"
if doc.setContent( xmlfile ) == 0:
print "no xml content"
# creating a new renderer
myRenderer = QgsCategorizedSymbolRendererV2('',[])
myRenderer.load(doc.documentElement())
# here myRenderer has still no categories!
# assign myRenderer to the active layer
layer = qgis.utils.iface.activeLayer()
layer.setRendererV2(myRenderer)