[Gvsig_desarrolladores] Como obtener la caja de un dato vectorial

Carlos Sánchez Periñán csanchez en prodevelop.es
Lun Mayo 26 11:59:45 CEST 2008


Hola Leonid,

Aquí te dejo un fragmento de código que te puede orientar para realizar lo que creo que quieres hacer.

En realidad es obtener los features seleccionados de la capa:

 

//getSelectionSupport se encontrará implementada en FlyrVect.java o en función del driver vectorial que uses, si no extiendes de el lo tienes que importar  

                BitSet sel = getSelectionSupport().getSelection(); 

 

En realidad es obtener los features seleccionados de la capa mirando que la geometría no sea vacía 

 

// Bucle para recorrer todas las geometrías con el bit de selección activado...

for (int i = sel.nextSetBit(0); i >= 0; i = sel.nextSetBit(i+1)) {

// para obtener la caja "extent" general de la vista por si necesitamos comparar para ver si una geometría intersecta con la vista

bb = getSource().getShapeBounds(i);

// evitamos las geometrías vacías...

if (ig == null) {

                                                logger.debug("ig es NULL: " + i);

                                                continue;

                                }

 

Y para obtener la rectángulo "extent" de la geometría es mediante la instrucción:

 

else {

                                                Rectangle2D rect = getSource().getShape(i).getBounds2D();

                                }

}

 

Espero que esto te ayude, y sea lo que buscas. Ya dices que tal fue.

Saludos.

                

Carlos Sánchez Periñán

Equipo desarrollo GIS

Prodevelop S.L.

Tel :  963510612

E-mail : csanchez en prodevelop.es

________________________________

De: gvsig_desarrolladores-bounces en runas.cap.gva.es [mailto:gvsig_desarrolladores-bounces en runas.cap.gva.es] En nombre de Leonid Mendoza Robaina
Enviado el: viernes, 23 de mayo de 2008 20:19
Para: gvsig_desarrolladores en runas.cap.gva.es
Asunto: [Gvsig_desarrolladores] Como obtener la caja de un dato vectorial

 

Hola a todos:

 

Si alguien pudiera ayudarme con esto:

 

Dada una capa vectorial, como puedo obtener las coordenadas (o alguna información sobre la posicion) del rectangulo que contiene al dato vectorial que esta seleccionado, por supuesto, en caso de haber alguno seleccionado.

 

Es decir, supongamos que un usuario ha cargado una capa vectorial dentro de una vista y ha seleccionado un poligono utilizando las herramientas de seleccion que provee gvSIG. ¿Como puedo obtener la "caja" de ese dato?

 

Muchas gracias por su ayuda,

 

Leonid Mendoza

Estudiante de Ciencia de La Computación, Universidad de La Habana.

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://runas.cap.gva.es/pipermail/gvsig_desarrolladores/attachments/20080526/5fbf81c9/attachment.htm


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