<div dir="ltr"><div class="gmail_default" style="font-family:"courier new",monospace">Hola</div><div class="gmail_default" style="font-family:"courier new",monospace"><br></div><div class="gmail_default" style="font-family:"courier new",monospace"> primero podés convertir los linestring a polygon como explican acá</div><div class="gmail_default"><font face="courier new, monospace"><a href="https://postgis.net/docs/ST_MakePolygon.html">https://postgis.net/docs/ST_MakePolygon.html</a></font><br></div><div class="gmail_default"><font face="courier new, monospace"><br></font></div><div class="gmail_default"><font face="courier new, monospace"> pero tu ejemplo tiene lineas de 2 puntos y se necesitan 4 puntos al menos para armar polygons (triángulos, </font><span style="font-family:"courier new",monospace">punto incial debe ser = punto final, ser cerrados)</span></div><div class="gmail_default"><font face="courier new, monospace"><br></font></div><div class="gmail_default"><font face="courier new, monospace"><div class="gmail_default">halpe=# select id, ST_MakePolygon(geometria) from forestal_ln;</div><div class="gmail_default">ERROR:  lwpoly_from_lwlines: shell must have at least 4 points</div><div><br></div><div>-h</div></font></div><div class="gmail_default"><font face="courier new, monospace"> </font></div><div class="gmail_default"><font face="courier new, monospace"> </font></div></div><div class="gmail_extra"><br><div class="gmail_quote">2017-06-27 13:42 GMT-03:00 Dannenberg Guillermo Adrián <span dir="ltr"><<a href="mailto:gdannen0@rosario.gov.ar" target="_blank">gdannen0@rosario.gov.ar</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Buenas tarde, quizas alguien me pueda dar una mano, ya que arranque hace poco en el tema.<br>
<br>
En una base de datos espacial en Postgis, tengo dos tablas:<br>
Una tabla llamada forestal_ln la cual contiene LINESTRING.<br>
Una tabla llamada forestal que cuenta con algunos campos y dos campos geométricos: 'centroide' que contiene geometría de tipo POINT y 'geometria' que contiene geométrica de tipo MULTIPOLYGON.<br>
En donde cada centroide de la tabla forestal se encuentra encerrado por varias líneas de la tabla forestal_ln.<br>
Les agradecería mucho si pudieran orientarme en:<br>
1) ¿qué procesos podría correr para asegurarme de que esas lineas verdaderamente encierran un solo centroide? Verificar la topologia.<br>
2) (más importante) ¿cómo puedo crear los polígonos a partir de esas lineas y actualizar con esos polígonos creados el campo geometria de la tabla forestal?<br>
<br>
Los datos con los cuales estoy trabajando:<br>
<br>
CREATE TABLE forestal(<br>
id serial NOT NULL,<br>
tipo varchar(6),<br>
densidad real,<br>
CONSTRAINT forestal_pkey PRIMARY KEY(id)<br>
);<br>
SELECT AddGeometryColumn ( 'forestal', 'centroide', 22185, 'POINT', 2);<br>
SELECT AddGeometryColumn ( 'forestal', 'geometria', 22185, 'MULTIPOLYGON', 2);<br>
<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('PMT',85.2,ST_GeomFromT<wbr>ext('POINT(5500060 6500180)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('PCRTA',52.42,ST_GeomFr<wbr>omText('POINT(5500080 6500270)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('CA',42.26,ST_GeomFromT<wbr>ext('POINT(5500120 6500100)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('AMJ',86.6,ST_GeomFromT<wbr>ext('POINT(5500210 6500190)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('ODM',8.6,ST_GeomFromTe<wbr>xt('POINT(5500220 6500070)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('EMDF',27.8,ST_GeomFrom<wbr>Text('POINT(5500220 6500110)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('DHRT',36.27,ST_GeomFro<wbr>mText('POINT(5500220 6500280)',22185));<br>
INSERT INTO forestal (tipo,densidad,centroide) VALUES('FM',73.24,ST_GeomFromT<wbr>ext('POINT(5500230 6500260)',22185));<br>
<br>
CREATE TABLE forestal_ln(<br>
id serial NOT NULL,<br>
CONSTRAINT forestal_ln_pkey PRIMARY KEY(id)<br>
);<br>
SELECT AddGeometryColumn ( 'forestal_ln', 'geometria', 22185, 'LINESTRING', 2);<br>
<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500030 6500230,5500030 6500050)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500030 6500290,5500030 6500250)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500030 6500050,5500160 6500050)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500050,5500280 6500050)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500090,5500280 6500050)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500090,5500280 6500140)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500150,5500280 6500140)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500150,5500280 6500220)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500190 6500220,5500280 6500220)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500190 6500230,5500100 6500230)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500190 6500220,5500190 6500230)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500100 6500230,5500030 6500230)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500030 6500250,5500120 6500250)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500180 6500250,5500120 6500250)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500180 6500250,5500280 6500250)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500250,5500280 6500270)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500290,5500280 6500270)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500280 6500290,5500090 6500290)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500030 6500290,5500090 6500290)',22185));<br>
<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500090 6500290,5500180 6500270)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500180 6500270,5500220 6500270)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500220 6500270,5500120 6500250)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500220 6500270,5500280 6500270)',22185));<br>
<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500100 6500230,5500100 6500170)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500100 6500170,5500030 6500050)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500100 6500170,5500160 6500170)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500170,5500160 6500150)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500150,5500160 6500140)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500140,5500280 6500140)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500140,5500160 6500090)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500090,5500280 6500090)',22185));<br>
INSERT INTO forestal_ln (geometria) VALUES(ST_GeomFromText('LINEST<wbr>RING(5500160 6500090,5500160 6500050)',22185));<br>
<br>
Gracias y saludos..<br>
<br>
Guillermo A. Dannenberg<br>
<br>
______________________________<wbr>_________________<br>
Argentina mailing list<br>
<a href="mailto:Argentina@lists.osgeo.org" target="_blank">Argentina@lists.osgeo.org</a><br>
<a href="https://lists.osgeo.org/mailman/listinfo/argentina" rel="noreferrer" target="_blank">https://lists.osgeo.org/mailma<wbr>n/listinfo/argentina</a><br>
</blockquote></div><br></div>