[Gvsig_desarrolladores] Acceso a los shape mediante una consulta sin mapPoint

Eduardo Cristóbal Enríquez edu_ce_1988 en hotmail.com
Dom Mayo 23 21:36:22 CEST 2010


Vale de momento ya me he aclarado, lo que tenía que hacer es:

FLyrVect capaSeleccionada = 
(FLyrVect)capas.getLayer(nombreCapaSeleccionada);
try {
	FBitSet selection = 
capaSeleccionada.queryByRect(capaSeleccionada.getFullExtent());

Es decir usar queryByRect sabiendo que con el nombre de la capa puedes 
obtener un objeto Rectangle2D con .getFullExtent() (que es lo que necesitas 
para realizar de esta manera la consulta).

Saludos.

--------------------------------------------------
From: "Eduardo Cristóbal Enríquez" <edu_ce_1988 en hotmail.com>
Sent: Friday, May 21, 2010 9:39 PM
To: <gvsig_desarrolladores en listserv.gva.es>
Subject: [Gvsig_desarrolladores] Acceso a los shape mediante una consultasin 
mapPoint

> Hola, me podeis decir como puedo acceder hacer a los shape?
> Yo ahora mismo conozco el método de acceder con una consulta registrando 
> el
> click del rato en una variable mapPoint:
> Point2D pReal = event.getPoint();
> Point2D mapPoint =
> mapControl.getViewPort().toMapPoint((int)pReal.getX(),(int)pReal.getY());
> try {
> FBitSet selection = lyrProvincias.queryByPoint(mapPoint,tol);
> if (!selection.isEmpty()){
> DataSource ds = ((AlphanumericData)lyrProvincias).getRecordset();
> ds.start();
> int idAtributo = ds.getFieldIndexByName("NombreAtributo");
> Value strNombre = ds.getFieldValue(selection.nextSetBit(0),idAtributo);
> ds.stop();
>
> Y la idea no es trabajar con clicks, sino con shapes, los obtengo así:
> FLayers capas = mapCtrl.getMapContext().getLayers();
> int numeroCapas = capas.getLayersCount();
> FLayer[] listaCapas = new FLayer[numeroCapas];
> for(int i=0; i<numeroCapas;i++)
> listaCapas[i] = capas.getLayer(i);
> if(numeroCapas !=0){
> String[] nombreCapas = new String[numeroCapas];
> for(int i=0; i < numeroCapas; i++)
> nombreCapas[i] = listaCapas[i].getName();
>
> Le pongo la lista de shapes al usuario y el selecciona uno, entonces me
> gustaría acceder a la información del shapes seleccionado porque uso
> Sextante y el Gestor de GeoProcesos y trabajo con atributos que se crean 
> con
> estas 2 aplicaciones. Y poder testearlas para si por ejemplo no están
> decirle al usuario los pasos para que las cree.
> Además con una opción del Gestor de Geoprocesos me divide ese shape y aún
> siendo el mismo, las zonas en las que se ha dividido tienen datos con los
> que tengo que operar, por eso me es importante conocer como puedo acceder 
> a
> los shapes.
> Así que si me podeis indicar como realizo la consulta de otra manera y 
> como
> accedería a los datos de un shape cuando esté dividido en zonas, y también
> acceder a las coordenadas o vertices que lo delimitan se agradecería
> muchísimo.
> Saludos.
>
> Edu
>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
> 


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