[Gvsig_usuarios] cambiar the_geom en postgis.
Valenty Gonzalez
gvalenty en creativa-consultores.com
Jue Jul 25 23:45:29 CEST 2013
Hola Manuel, he seguido la recomendación de Jose Carlos (me alegra verle
en la lista gvSIG), donde dice:
"Quizás lo más fácil sea tratar de exportar la capa con gvSIG a PostGIS
de nuevo, con otra nombre claro.
Como gvSIG no gestiona entidades de tipo no multi, quizás cree la tabla
de multipolygon."
Exporté nuevamente la capa desde gvSIG usando v-1.12 y en efecto la creo
Multipolygon en PostGIS.
Y luego probé editar y me funcionó.
Pero antes una observación.
Al exportar desde gvSIG recuerda que asignará como proyección la que
tenga asignada la VISTA. En mi caso verifiqué el archivo .prj de tu
shape, y ví que está en CRTM05.
En la web spatialreference.org busqué el fichero equivalente.
Luego busqué en la tabla 'spatial_ref_system' de PostGIS el srid y no
estaba. Así que tomé la instrucción SQL para cargarlo desde la misma
página spatialreference.org:
http://spatialreference.org/ref/sr-org/7057/postgis/
(verifica que los parámetros son los mismos)
Como en gvSIG tampoco está precargado el CRTM05, lo agregué de la
siguiente forma:
1.- busca en spatialreference.org la proyeccion que deseas crear y elije
el formato OGC-WKT
2.- copia el texto de parámetros WKT. Creo que para CRMT05 el enlace es:
http://spatialreference.org/ref/sr-org/7057/ogcwkt/
3.- Abre gvSIG. Crea una VISTA nueva. Seleccionala y ve a Propiedades de
la VISTA
4.- Haz click en la pestaña de 'Proyeccion actual' (que debe estar en
23030). Despliega las opciones de TIPO y elige CRS de Usuario
5.- En la parte inferior de la ventana haz click en NUEVO. Allí elige la
opción 'A partir de una cadena WKT'
6.- Pega el texto copiado en el punto 2. en el recuadro disponible en la
ventana
7.- Click en Finalizar. Click en Aceptar. Y ya tienes la VISTA en
Proyeccion CRTM05
8.- En lo sucesivo el sistema de referencia está cargado como opción
personalizada.
9.- Puedes ir a Preferencias de gvSIG y elegir esta proyección como
predeterminada
Para finalizar. Abre una VISTA con CRS del usuario equivalente a CRTM05,
carga el shape y exportalo a PostGIS. Te quedará de tipo Multipolygon y
podrás editarlo desde gvSIG.
Saludos,
Valenty
El 25/07/13 16:36, Jose Carlos Martinez Llario escribió:
> Hola,
> gvSIG al menos que no hayan cambiado el driver ultimamente no maneja
> correctamente geometrías sencillas, es decir, no tipo multi de PostGIS.
> Supongo que en la versión 1.12 seguirá igual, en la 2 no lo sé.
>
> Para cambiar una columna de tipo de geometría en PostGIS (en 1.5 es un
> poco más dificil que en PostGIS 2) deberías:
>
> 1.- Quitar la restricción de tipo check de geometría de la tabla.
> 2.- Realizar un update
> update tabla set geom = st_multi(geom);
> 3.- Añadir la restricción de tipo check de geometría de la trabla
> 4.- Modificar geometry_column con el tipo ahora a MULTIPOLYGON
>
> También los pasos 3 y 4 te los puedes evitar con la orden
> probe_geometry_columns.
>
> o también podrías añadir una segundo columna de geometría, lo cual sería
> más facil:
>
> 1. Añadir una nueva columna de geometría con addgeometrycolumn
> 2. realizar un update:
> update tabla set geomnueva = st_multi(geom);
> 3.- Borrar con dropgeometrycolumn la columna vieja geom
>
> En fin, un poco complicado si no conoces PostGIS.
>
> Quizás lo más fácil sea tratar de exportar la capa con gvSIG a PostGIS
> de nuevo, con otra nombre claro.
> Como gvSIG no gestiona entidades de tipo no multi, quizás cree la tabla
> de multipolygon.
>
> Esto te funcionaría siempre que no tengas tipos de datos raros en las
> columnas pq puede que gvsig no los interprete bien.
> Si es una tabla digamos normal posiblemente funcione. Si no puedes
> tratar de hacer lo mismo con otro sig de escritorio.
>
> Yo probaría esto último con gvsig, si no estás acostrumbrado a PostGIS.
> Espero haberte ayudado.
> Un saludo
> José Carlos
>
>
>
>
> On 25/07/2013 22:54, Valenty Gonzalez wrote:
>> No debería sea problema que sea 'polygon' en lugar de 'multipolygon'
>> La migración a PostGIS la haz hecho usando shp2pgsql?
>> Si te parece puedes enviarme a mi correo una parte de la capa original
>> para probar por acá.
>> Saludos,
>> Valenty
>>
>>
>> El 25/07/13 16:07, Manuel Castro escribió:
>>> Gracias Valenty:
>>>
>>> Pero te digo que la capa es de unicamente de poligonos, y estoy
>>> realizando las pruebas a manera local, por lo cual tengo todos los
>>> permisos de escritura.
>>> Pregunto porque en el foro me habian indicado que el problema se da en
>>> la base de datos, ya que el tipo de geometria deberia ser multipoligono
>>> y no poligono.
>>> Pero no puedo cambiar a multipoligono la tabla en postgis, ya que el
>>> Gvsig no me realiza cambios en la tabla grafica, mientras el QGis si lo
>>> realiza ya que este reconoce los dos tipos de geometrias, como? no lo se
>>> pero ahi si lo puedo modificar sin ningun problema.
>>> Como estoy realizando un proyecto para una institucion no puedo decirles
>>> que utilicen uno u otro software para que hagan una u otra cosa.
>>>
>>> Gracias.
>>>
>>>
>>> El 25 de julio de 2013 13:37, Valenty Gonzalez
>>> <gvalenty en creativa-consultores.com
>>> <mailto:gvalenty en creativa-consultores.com>> escribió:
>>>
>>> Hola Manuel,
>>> El campo the_geom almacena los vértices o pares de coordenadas.
>>> En la tabla 'geometry_column' se indica el tipo de geometría.
>>> El tipo de geometría debería ser linea, punto o polígono, puede ser de
>>> tipo geometry cuando es una capa con diferentes geometrías en la
>>> misma capa.
>>>
>>> Creo que puede estar sucediendo dos cosas:
>>> 1.- Que la capa tiene diferentes geometrías, con lo cual deberías
>>> intentar previamente separarlas y migrar de nuevo a postgis.
>>> 2.- Que el usuario con el que editas no tenga permiso de escritura en
>>> las tablas requeridas.
>>>
>>> Saludos,
>>> Valenty
>>>
>>> El 25/07/13 12:58, Manuel Castro escribió:
>>> > Si ya modifique la caracteristica en la tabla geometry_columns, pero
>>> > todavia nada me sigue dando errores, y es que creo que en la tabla que
>>> > tiene la columna the_geom no se ha realizado los cambios.
>>> >
>>> > Gracias.
>>> >
>>> > Manuel Castro Prado.
>>> > http://signet-siglibre.blogspot.com/
>>> > San José, Costa Rica.
>>> > SIGWeb Consultores.
>>> >
>>> >
>>> > _______________________________________________
>>> > gvSIG_usuarios mailing list
>>> > gvSIG_usuarios en listserv.gva.es <mailto: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:
>>> >
>>> > http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>>> >
>>> _______________________________________________
>>> gvSIG_usuarios mailing list
>>> gvSIG_usuarios en listserv.gva.es <mailto: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:
>>>
>>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>>>
>>>
>>>
>>>
>>> --
>>> Manuel Castro Prado.
>>> http://signet-siglibre.blogspot.com/
>>> San José, Costa Rica.
>>> SIGWeb Consultores.
>>>
>>>
>>> _______________________________________________
>>> 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:
>>>
>>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>>>
>> _______________________________________________
>> 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:
>>
>> http://listserv.gva.es/cgi-bin/mailman/listinfo/gvsig_usuarios
>
>
Más información sobre la lista de distribución gvSIG_usuarios