[Gvsig_desarrolladores] Pintar etiqueta en MemoryDriver

Maria Arias de Reyna marias en emergya.es
Jue Feb 5 10:48:53 CET 2009


Estoy intentando poner etiquetas a algunas geometrías mediante un 
MemoryDriver. Consigo que me pinte las geometrías, pero no consigo ver las 
etiquetas. 

El tamaño de la fuente no es el problema, porque lo uso en otras capas 
(cargadas de un shape) y se ven las etiquetas de esas otras capas.

El driver que utilizo es la implementación más simple de un MemoryDriver que 
se puede hacer.

El código que estoy utilizando es este:

			String label = "etiqueta";
			this.driver.getTableModel().setColumnIdentifiers(new String[] {label});

			FLyrVect layer = (FLyrVect) LayerFactory.createLayer("Capa", driver,
					CRSFactory.getCRS("EPSG:23030"));

			SingleSymbolLegend legend = (SingleSymbolLegend) layer.getLegend();
			legend.setLabelField(label);

			FSymbol symbol = new FSymbol(FShape.MULTI);
			symbol.setFontSize(fontSize);
			symbol.setColor(Color.BLUE);
			symbol.setFontSizeInPixels(false);
			symbol.setRotation(0);
			symbol.setFontColor(Color.BLUE);
			symbol.setFont(labelFont);
			symbol.setShapeVisible(true);
			
			legend.setDefaultSymbol(symbol);
			
			layer.setLegend(legend);
			mapContext.getLayers().addLayer(
					this.getNewMapControl().getMapContext().getLayers()
							.getLayersCount(), layer);

//Y añado las geometrías con su correspondiente etiqueta:

				this.driver.addGeometry(geom, new Object[] {
						ValueFactory.createValue("etiqueta") });

Como ya he dicho, el código pinta bien las geometrías, pero no pinta las 
etiquetas.

-- 
María Arias de Reyna Domínguez
Emergya Consultoría



Más información sobre la lista de distribución gvSIG_desarrolladores