[Gvsig_desarrolladores] Eliminar puntos de una capa por código

David Alda Fernandez de Lezea dalda en ikt.es
Mie Mar 25 13:12:16 CET 2009


Hola, 
 
Tengo una duda que quería plantear. Dentro de una extensión que estamos desarrollando, colocamos un punto en una capa mediante código:
 
IGeometry geom = ShapeFactory.createPoint2D(dest.getX(), dest.getY());

theGraphic = new FGraphic(geom, idSymbol);

gl.addGraphic(theGraphic);

mc.drawGraphics();

 
hasta aquí todo va bien. El punto se pone donde le decimos. 
 
Luego queremos borrar el punto tambien mediante código, utilizando la función:
gl.removeGraphic(theGraphic);

La cuestión es, que el punto se elimina bien, pero tengo que hacer zoom o minimizar y maximizar la pantalla para que se refresque la capa, si no hago eso el punto no se elimina de la capa, pero sí internamente. He probado con lo siguiente pero ninguna opción me funciona:
 
gl = mc.getMapContext().getGraphicsLayer();

gl.clearAllGraphics();

gl.removeGraphic(theGraphic);

v.repaintMap();

mc.update(mc.getGraphics());

mc.repaint();

mc.drawGraphics();

 
¿Cómo puedo hacer para refrescar la capa y que el punto no vuelva a aparecer?
 
Gracias.
 
Un saludo.
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://runas.cap.gva.es/pipermail/gvsig_desarrolladores/attachments/20090325/a9ed420a/attachment.htm


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