[Gvsig_desarrolladores] error en capa y convertir un dato numerico expresado en Value a Long o algo así, operable y cambiar el color de un shape

Eduardo Cristóbal Enríquez edu_ce_1988 en hotmail.com
Mar Mayo 25 15:24:11 CEST 2010


Muchas gracias Carlos, ya me he aclarado con lo de la E.
Ahora voy a buscar en PanelLegendBreaks a ver si veo como se asignan los 
Symbol a cada feature
Ya os contaré,

gracias!

Un saludo!

Edu.
--------------------------------------------------
From: "Carlos Sánchez Periñán" <csanchez en prodevelop.es>
Sent: Tuesday, May 25, 2010 2:12 PM
To: "Lista de Desarrolladores de gvSIG" 
<gvsig_desarrolladores en listserv.gva.es>
Subject: Re: [Gvsig_desarrolladores]error en capa y convertir un dato 
numerico expresado en Value a Long o algo así, operable y cambiar el color 
de un shape

> Hola Edu.
>
> Puedes fijarte en como se hace la leyenda de intervalos... es muy útil en 
> el caso que comentas, creo que apañando para que coja tus valores te 
> servirá.
>
> La clase que tienes que mirar es
>
> com.iver.cit.gvsig.project.documents.view.legend.gui.PanelLegendBreaks
>
> La debes tener en tu workspace de gvSIG dentro de appgvSIG, es el panel 
> del Wizard de establecer leyenda.
>
> Ahí tienes puedes empezar a mirar desde el método performFinish(); que 
> equivale a pulsar el boton de finalizar el wizard después de haber elegido 
> la leyenda, ahí crea símbolos para los intervalos y los asigna a los 
> features de la layer. Para cambiar el color de los features tienes que 
> hacerlo con los Symbol de los features asignándolos a cada feature el 
> Symbol con el color adecuado.
>
> - Sobre lo de los números double con la E
> La E es exponencial en base 10, por tanto no deberías de truncar los 
> números a no ser que solo necesites un valor aproximado. O bién 
> multiplicar el número sin la E por un 10 con tantos ceros como exponente 
> tenga o el numero que va detrás de la E
>
> Por tanto 4.567890E7 = 4.567890 * 10000000 = 45678900
>
> Saludos y espero que te ayude.
>
> Carlos Sánchez Periñán
> Equipo desarrollo GIS
> Prodevelop S.L.
> Tel :  963510612
> E-mail : csanchez en prodevelop.es
>
>
> -----Mensaje original-----
> De: gvsig_desarrolladores-bounces en listserv.gva.es 
> [mailto:gvsig_desarrolladores-bounces en listserv.gva.es] En nombre de 
> Eduardo Cristóbal Enríquez
> Enviado el: lunes, 24 de mayo de 2010 16:15
> Para: Lista de Desarrolladores de gvSIG
> Asunto: Re: [Gvsig_desarrolladores]error en capa y convertir un dato 
> numerico expresado en Value a Long o algo así, operable y cambiar el color 
> de un shape
>
> Se me olvidó decir que los atributos se me muestran  con la opción Ver 
> tabla
> de atributos de la pestaña Capa aparte de que como ya dije la forma y todo
> está ok, solo me falla cuando hago Vista/Consulta/Información y hago click
> en el layer copiado.
>
> --------------------------------------------------
> From: "Eduardo Cristóbal Enríquez" <edu_ce_1988 en hotmail.com>
> Sent: Monday, May 24, 2010 4:02 PM
> To: "Lista de Desarrolladores de gvSIG"
> <gvsig_desarrolladores en listserv.gva.es>
> Subject: Re: [Gvsig_desarrolladores]error en capa y convertir un dato
> numerico expresado en Value a Long o algo así, operable y cambiar el color
> de un shape
>
>> He ido a copiar una capa existente y bueno, aparentemente se copia bien
>> sin
>> errores, aparece en el panel derecho del visor junto con las demas capas 
>> y
>> el dibujo, el nombre y todo parece que está bien, pero cuando hago click
>> en
>> información y la selecciono me salta un java.lang.NullPointerException:
>> null
>>
>> El código usado para copiarla es:
>>
>> try {
>> FLayer copia = capas.getLayer(nombreCapaSeleccionada).cloneLayer();
>> if (copia != null) {
>> copia.setVisible(true);
>> MapControl mapControl = v.getMapControl();
>> mapControl.getMapContext().getLayers().addLayer(copia);
>> }
>> } catch (Exception e1) {
>> e1.printStackTrace();
>> }
>>
>> pero cuando lo ejecuto me da un error, copio el log:
>>
>> java.lang.NullPointerException: null
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
>> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
>> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
>> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
>> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
>> java.awt.Component.processMouseEvent(Component.java:5517)
>> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
>> java.awt.Component.processEvent(Component.java:5282)
>> java.awt.Container.processEvent(Container.java:1966)
>> java.awt.Component.dispatchEventImpl(Component.java:3984)
>> java.awt.Container.dispatchEventImpl(Container.java:2024)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
>> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
>> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
>> java.awt.Container.dispatchEventImpl(Container.java:2010)
>> java.awt.Window.dispatchEventImpl(Window.java:1791)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
>> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
>> java.lang.NullPointerException java.lang.NullPointerException: null
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
>> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
>> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
>> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
>> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
>> java.awt.Component.processMouseEvent(Component.java:5517)
>> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
>> java.awt.Component.processEvent(Component.java:5282)
>> java.awt.Container.processEvent(Container.java:1966)
>> java.awt.Component.dispatchEventImpl(Component.java:3984)
>> java.awt.Container.dispatchEventImpl(Container.java:2024)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
>> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
>> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
>> java.awt.Container.dispatchEventImpl(Container.java:2010)
>> java.awt.Window.dispatchEventImpl(Window.java:1791)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
>> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
>> java.lang.NullPointerException java.lang.NullPointerException: null
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
>> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
>> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
>> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
>> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
>> java.awt.Component.processMouseEvent(Component.java:5517)
>> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
>> java.awt.Component.processEvent(Component.java:5282)
>> java.awt.Container.processEvent(Container.java:1966)
>> java.awt.Component.dispatchEventImpl(Component.java:3984)
>> java.awt.Container.dispatchEventImpl(Container.java:2024)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
>> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
>> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
>> java.awt.Container.dispatchEventImpl(Container.java:2010)
>> java.awt.Window.dispatchEventImpl(Window.java:1791)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
>> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
>> java.lang.NullPointerException java.lang.NullPointerException: null
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.process(DefaultStrategy.java:393)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByRect(DefaultStrategy.java:115)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByRect(ShpStrategy.java:618)
>> com.iver.cit.gvsig.fmap.operations.strategies.ShpStrategy.queryByPoint(ShpStrategy.java:752)
>> com.iver.cit.gvsig.fmap.operations.strategies.DefaultStrategy.queryByPoint(DefaultStrategy.java:419)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.queryByPoint(FLyrVect.java:1071)
>> com.iver.cit.gvsig.fmap.layers.FLyrVect.getInfo(FLyrVect.java:1082)
>> com.iver.cit.gvsig.project.documents.view.toolListeners.InfoListener.point(InfoListener.java:423)
>> com.iver.cit.gvsig.fmap.tools.Behavior.PointBehavior.mouseReleased(PointBehavior.java:99)
>> com.iver.cit.gvsig.fmap.tools.CompoundBehavior.mouseReleased(CompoundBehavior.java:275)
>> com.iver.cit.gvsig.fmap.MapControl$MapToolListener.mouseReleased(MapControl.java:1471)
>> java.awt.Component.processMouseEvent(Component.java:5517)
>> javax.swing.JComponent.processMouseEvent(JComponent.java:3135)
>> java.awt.Component.processEvent(Component.java:5282)
>> java.awt.Container.processEvent(Container.java:1966)
>> java.awt.Component.dispatchEventImpl(Component.java:3984)
>> java.awt.Container.dispatchEventImpl(Container.java:2024)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
>> java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
>> java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
>> java.awt.Container.dispatchEventImpl(Container.java:2010)
>> java.awt.Window.dispatchEventImpl(Window.java:1791)
>> java.awt.Component.dispatchEvent(Component.java:3819)
>> java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
>> com.iver.andami.ui.AndamiEventQueue.dispatchEvent(AndamiEventQueue.java:58)
>> java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
>> java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
>> java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
>> java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
>>
>>
>> alguien sabe por que puede ser esto y los otros 2 problemas?
>> Gracias
>>
>> --------------------------------------------------
>> From: "Eduardo Cristóbal Enríquez" <edu_ce_1988 en hotmail.com>
>> Sent: Monday, May 24, 2010 2:04 AM
>> To: <gvsig_desarrolladores en listserv.gva.es>
>> Subject: [Gvsig_desarrolladores] convertir un dato numerico expresado en
>> Value a Long o algo así, operable y cambiar el color de un shape
>>
>>> Hola,
>>>
>>> tengo dos problemas, el primero es que cuando hago una consulta de esta
>>> forma:
>>>
>>> Value strArea = ds.getFieldValue(selection.nextSetBit(0),idArea);
>>> Va todo bien, sin ningún tipo de error, y me muestra el dato que está
>>> asignado a dicha capa, en este caso:  4.272045E7
>>> El problema es que el número es en realidad: 42720450,00000  (lo se
>>> porque
>>> abro el .dbf con el excel y ahí sí se muestra el valor real).
>>> Entonces la pregunta es la siguiente: cómo puedo pasar de Value a Long 
>>> (o
>>> a
>>> un dato con el que pueda operar): He probado cosas como:
>>> (long)strArea.toString() pero no me deja.
>>>
>>> El segundo es que no se como puedo cambiar el color de una capa (layer),
>>> y
>>> necesito cambiárselo (que aparezca con otro color cuando se muestra en 
>>> el
>>> mapa) .
>>> Lo podría hacer dentro de este código o como sería?
>>>
>>> try {
>>> FBitSet selection =
>>> capaSeleccionada.queryByRect(capaSeleccionada.getFullExtent());
>>>
>>> if (!selection.isEmpty()){
>>> DataSource ds = ((AlphanumericData)capaSeleccionada).getRecordset();
>>> ds.start();
>>> ds.(algun método que me permita cambiar el color)
>>>
>>>
>>> Muchas gracias.
>>> Un saludo.
>>>
>>> Eduardo.
>>>
>>> _______________________________________________
>>> gvSIG_desarrolladores mailing list
>>> gvSIG_desarrolladores en listserv.gva.es
>>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>>
>> _______________________________________________
>> gvSIG_desarrolladores mailing list
>> gvSIG_desarrolladores en listserv.gva.es
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
>>
> _______________________________________________
> gvSIG_desarrolladores mailing list
> gvSIG_desarrolladores en listserv.gva.es
> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_desarrolladores
> _______________________________________________
> 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