You are here:GeoTux»Geo-Forums»Equivalente en PostGis de simplifiar geometría en Qgis

Statistics

Invitados: 123
Usuarios registrados: 3176
Usuarios en línea:
-
Registrados hoy:
-

Register

RSS

Blogs and News:
Recibe las actualizaciones en Geo-Noticias y Geo-Blogs

Get them by e-mail
Recibir Geo-Noticias y Geo-Blogs por e-mail

¿What is this about?

Welcome, Guest
Username Password: Remember me

Equivalente en PostGis de simplifiar geometría en Qgis
(1 viewing) (1) Guest
  • Page:
  • 1

TOPIC: Equivalente en PostGis de simplifiar geometría en Qgis

Equivalente en PostGis de simplifiar geometría en Qgis 16 Jan 2018 12:28 #1246

  • nramire1
  • OFFLINE
  • Visitante casual
  • Posts: 10
  • Karma: 1
Hola
Estoy haciendo en una comparativa entre PostGis y Qgis particularmente en la búsqueda de herramientas equivalentes. En este caso buscando el análogo de la herramienta "simplifiar geometrías" (de la caja de herramiantas procesado) de Qgis, en PostGis he encontrado la función ST_RemovePoint la cual sólo remueve un punto a la vez. Algún experimentado se ha puesto a lidiar con esta cuestión y/o podrían orientarme hacia donde seguir.

Re: Equivalente en PostGis de simplifiar geometría en Qgis 25 Jan 2018 15:24 #1247

  • nramire1
  • OFFLINE
  • Visitante casual
  • Posts: 10
  • Karma: 1
Después de buscar, encontré la forma equivalente en PostGis. Les dejo un ejemplo práctico:

CREATE TABLE dato (nombre varchar, geometria geometry);

INSERT INTO dato VALUES
('linea 1', 'LINESTRING(-1 1.7,-1 2,-2 2,-3 3,-4 4.1,-5 5)'),
('poligono 1', 'POLYGON((-3 3,-3 0,-3.3 -1, -3 -3,5 -3,5 0.2,5 3.1,2.1 3,1.2 3,-3 3))');

--
-- Para la cadena de linea
--

SELECT nombre, ST_AsText(geometria)
FROM dato
WHERE nombre = 'linea 1';
nombre | st_astext
---------+-----------------------------------------------
linea 1 | LINESTRING(-1 1.7,-1 2,-2 2,-3 3,-4 4.1,-5 5)
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.1)) AS "0.1"
FROM dato
WHERE nombre='linea 1';
0.1
-----------------------------------
LINESTRING(-1 1.7,-1 2,-2 2,-5 5)
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.05)) AS "0.05"
FROM dato
WHERE nombre='linea 1';
0.05
------------------------------------------
LINESTRING(-1 1.7,-1 2,-2 2,-4 4.1,-5 5)
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.5)) AS "0.5"
FROM dato
WHERE nombre='linea 1';
0.5
-------------------------
LINESTRING(-1 1.7,-5 5)
(1 row)

--
-- Para el polígono
--

SELECT nombre, ST_AsText(geometria)
FROM dato
WHERE nombre = 'poligono 1';
nombre | st_astext

------------+-------------------------------------------------------------------
---
poligono 1 | POLYGON((-3 3,-3 0,-3.3 -1,-3 -3,5 -3,5 0.2,5 3.1,2.1 3,1.2 3,-3 3
))
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.1)) AS "0.1"
FROM dato
WHERE nombre='poligono 1';
0.1
----------------------------------------------------
POLYGON((-3 3,-3 0,-3.3 -1,-3 -3,5 -3,5 3.1,-3 3))
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.05)) AS "0.05"
FROM dato
WHERE nombre='poligono 1';
0.05
----------------------------------------------------------
POLYGON((-3 3,-3 0,-3.3 -1,-3 -3,5 -3,5 3.1,2.1 3,-3 3))
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.2)) AS "0.2"
FROM dato
WHERE nombre='poligono 1';
0.2
----------------------------------------------------
POLYGON((-3 3,-3 0,-3.3 -1,-3 -3,5 -3,5 3.1,-3 3))
(1 row)

SELECT ST_AsText(ST_Simplify(geometria, 0.5)) AS "0.5"
FROM dato
WHERE nombre='poligono 1';
0.5
---------------------------------------
POLYGON((-3 3,-3 -3,5 -3,5 3.1,-3 3))
(1 row)
  • Page:
  • 1
Time to create page: 0.40 seconds
 

On-line users

Latest Geo-Forums

More Topics »

Latest Comments