[Gvsig_desarrolladores] [Gvsig_usuarios] Dibujar un círculo con la librería geom

Joaquin Jose del Cerro Murciano jjdelcerro en gvsig.org
Lun Jul 29 11:19:41 CEST 2019


El lun., 29 jul. 2019 a las 8:47, Montes Cámara, Victor (<
victor.montes en alicante-ayto.es>) escribió:

> Muchas gracias Joaquín.
>
> Funciona perfectamente con la geometría de tipo círculo y el shape de tipo
> polígono. Hace bien la conversión.
> Realmente utilizo el círculo para seleccionar un texto de otra capa, por
> lo que quiero que sea transparente. Para ello he probado con una geometría
> de tipo circunferencia y el shape de tipo multilinea pero no funciona.
> Me sale el error que te adjunto.
>
> La captura del error que adjuntas no me da informacion suficiente para
saber que esta pasando.
Si tienes que pasar informacion de un error mejor que, junto  a la
descrpcion de que has hecho, adjuntes el fichero de log de la aplicacion,
que normalmente esta en la carpeta gvSIG del home del usuario. Si quieres
saber exactamente donde esta para una instalacion de gvSIG desktop en
concreto, puedes ir la opcion de menu

tools -> development -> Show error log

Te presentara una ventana con la ruta al fichero de log y su contenido.
Si me adjuntas ese fichero tras producirse un error me dara mas pistas de
que ha podido pasar que solamente una captura de pantalla.
Ojo, que el fichero se borra cada vez que arranca gvSIG.

Un saludo
Joaquin



> Un saludo,
> Víctor Montes.
>
> ------------------------------
> *De: *"Joaquin Jose del Cerro Murciano" <jjdelcerro en gvsig.org>
> *Para: *"Montes Cámara, Victor" <victor.montes en alicante-ayto.es>
> *CC: *"Lista de Desarrolladores de gvSIG" <
> gvsig_desarrolladores en listserv.gva.es>
> *Enviados: *Sábado, 27 de Julio 2019 12:22:00
> *Asunto: *Re: [Gvsig_usuarios] Dibujar un círculo con la librería geom
>
>
>
> El vie., 26 jul. 2019 a las 13:39, Montes Cámara, Victor (<
> victor.montes en alicante-ayto.es>) escribió:
>
>> Gracias por la respuesta Joaquín. Por cierto la contesto en la lista de
>> desarrolladores, ya que me equivoqué y la envié a la de usuarios.
>>
>> El problema ahora es dibujar el círculo en una capa. Para ello hago lo
>> siguiente después de la última instrucción
>>
>> schema = createSchema()
>> schema.append("GEOMETRY", "GEOMETRY")
>> schema.get('GEOMETRY').setGeometryType(CIRCLE,D2M)
>>
>> shape = createShape(schema ,CRS='EPSG:25830')
>>
>> shape.edit()
>> shape.append(GEOMETRY=circulo)
>> shape.commit()
>>
>> currentView().addLayer(shape)
>>
>>
>> Me da el siguiente error de ejecución:
>>
>>
>> Error java.lang.RuntimeException: java.lang.RuntimeException: Error
>> getting geometry type with type = 11, subtype = 2 in <script> at line
>> number 36 utils 231:0
>>
>>
>>
>> Te contesto sin prestarle mucha atencion al error...
>
> Los shapes no soportan geometrias de tipo "Circulo".
> Los tipos soportado por el shape, son solo POINT, LINE, POLYGON,
> MULTIPOINT, MULTILINE y MULTIPOLYGON.
> Si pones:
>
> schema.get('GEOMETRY').setGeometryType(CIRCLE,D2M)
>
> Lo normal es que falle.
>
> Si quieres guardar geomtrias "circulo", deberas usar otro formato, que yo
> recuerde, ahora mismo solo te serviría el DXF.
> Ahora bien, lo que si que puedes hacer es declarar el shape como POLYGON y
> luego insertar el circulo. De forma automatica se convertira el circulo a
> un poligono. Perderas precision, pero en general deberia servirte. Es lo
> que suele hacerse de normal. ya que si luego quieres guardar ese circulo en
> una BBDD lo normal es que tampoco pueds y en ese momento acabe
> convirtiendose a poligono.
>
> Un saludo
> Joaquin
>
>
>
>
>>
>> Un saludo,
>>
>> Víctor Montes.
>>
>> ------------------------------
>> *De: *"Joaquin Jose del Cerro Murciano" <jjdelcerro en gvsig.org>
>> *Para: *"Lista de Usuarios de gvSIG" <gvsig_usuarios en listserv.gva.es>
>> *Enviados: *Martes, 23 de Julio 2019 20:10:34
>> *Asunto: *Re: [Gvsig_usuarios]        Dibujar un círculo con la librería
>> geom
>>
>>
>>
>> El mar., 23 jul. 2019 a las 14:24, Montes Cámara, Victor (<
>> victor.montes en alicante-ayto.es>) escribió:
>>
>>> Me gustaría saber cómo se dibuja un círculo en una vista. En la
>>> documentación (
>>> http://downloads.gvsig.org/download/web/es/build/html/scripting_devel_guide/2.3/modulo_geom.html)
>>> utiliza la librería "geom" para dibujar puntos, líneas, polígonos,
>>> multipolígonos, pero no explica cómo dibujar un elemento de tipo círculo,
>>> por ejemplo a partir de un centro y un radio, o con tres puntos.
>>>
>>>
>> Sin pensarlo demasiado, tirando directamente de la libreria de geometrias
>> java de gvSIG....
>>
>> # encoding: utf-8
>>
>> import gvsig
>>
>> from org.gvsig.fmap.geom import Geometry
>> from org.gvsig.fmap.geom import GeometryLocator
>>
>> def main(*args):
>>   geometryManager = GeometryLocator.getGeometryManager()
>>   #
>> http://downloads.gvsig.org/download/gvsig-desktop-testing/dists/2.4.0/docs/javadocs/html/index.html?org/gvsig/fmap/geom/GeometryManager.html
>>   #
>> http://downloads.gvsig.org/download/gvsig-desktop-testing/dists/2.4.0/docs/javadocs/html/org/gvsig/fmap/geom/Geometry.TYPES.html
>>   #
>> http://downloads.gvsig.org/download/gvsig-desktop-testing/dists/2.4.0/docs/javadocs/html/org/gvsig/fmap/geom/Geometry.SUBTYPES.html
>>
>>   center = geometryManager.createPoint(1,1,Geometry.SUBTYPES.GEOM2D)
>>   circulo = geometryManager.create(
>>     Geometry.TYPES.CIRCLE, # Geometry.TYPES.CIRCUMFERENCE
>>     Geometry.SUBTYPES.GEOM2D
>>   )
>>   #
>> http://downloads.gvsig.org/download/gvsig-desktop-testing/dists/2.4.0/docs/javadocs/html/org/gvsig/fmap/geom/primitive/Circle.html
>>   circulo.setPoints(center,10.0)
>>
>>   print circulo, circulo.getCenter(), circulo.getRadious()
>>
>> Usando el metodo create el GeometryManager se crean todos los tipos de
>> geometrias soportados por gvSIG.
>>
>> Un saludo
>> Joaquin
>>
>>
>>
>>
>>>
>>> Un saludo,
>>> Víctor Montes.
>>> _______________________________________________
>>> gvSIG_usuarios mailing list
>>> gvSIG_usuarios en listserv.gva.es
>>>
>>> Para ver histórico de mensajes, editar sus preferencias de usuario o
>>> darse de baja en esta lista, acuda a la siguiente dirección:
>>>
>>> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>>>
>>
>>
>> --
>> --------------------------------------
>> Joaquin Jose del Cerro Murciano
>> Development and software arquitecture manager at gvSIG Team
>> jjdelcerro en gvsig.com
>> gvSIG Association
>> www.gvsig.com
>>
>> _______________________________________________
>> gvSIG_usuarios mailing list
>> gvSIG_usuarios en listserv.gva.es
>>
>> Para ver histórico de mensajes, editar sus preferencias de usuario o
>> darse de baja en esta lista, acuda a la siguiente dirección:
>>
>> https://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>>
>>
>
> --
> --------------------------------------
> Joaquin Jose del Cerro Murciano
> Development and software arquitecture manager at gvSIG Team
> jjdelcerro en gvsig.com
> gvSIG Association
> www.gvsig.com
>
>

-- 
--------------------------------------
Joaquin Jose del Cerro Murciano
Development and software arquitecture manager at gvSIG Team
jjdelcerro en gvsig.com
gvSIG Association
www.gvsig.com
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://listserv.gva.es/pipermail/gvsig_desarrolladores/attachments/20190729/c864105c/attachment.html>


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