<div dir="ltr"><div><div><div>Jorge, Raquel:<br><br></div>Muchas gracias. Me pasó mi amiga su archivo shape y resulta que trae un campo de tiempo llamado "Fecha de l", pensaba que era el tiempo, pero viene algunas veces vacio y otras con entradas con formatos distintos entre si. Entonces me imagino que no podré usar el tiempo para unir los puntos por líneas según el orden en que fueron levantados en campo por el navegador gps.<br><br></div>Hice lo siguiente, lo que sugirió Raquel hasta el punto 2, o sea, obtener una tabla de puntos con ID, the_geom (que le puse geom) y una cosa que es llamada "path" (¿saben que es?)<br><br><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> </span><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo b"><b>unirlineasrotas=# SELECT (ST_Dumppoints(geom)).path as path, id, ST_AsText((ST_Dumppoints(geom)).geom) FROM lineasrotas;</b></span><div class="ace-line" id="magicdomid188"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo">  <br>Da algo como esto:</span></div><div class="ace-line" id="magicdomid191"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo">           path   |  id  |                 st_astext                 </span></div><div class="ace-line" id="magicdomid192"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo">----------+------+-------------------------------------------</span></div><div class="ace-line" id="magicdomid193"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,1}    | 1950 | POINT(-99.1297539372031 19.505867410611)</span></div><div class="ace-line" id="magicdomid194"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,2}    | 1950 | POINT(-99.1299497395282 19.5056639233386)</span></div><div class="ace-line" id="magicdomid195"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,3}    | 1950 | POINT(-99.1303380033786 19.5051778712592)</span></div><div class="ace-line" id="magicdomid196"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,4}    | 1950 | POINT(-99.130572731163 19.5048659036502)</span></div><div class="ace-line" id="magicdomid197"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,5}    | 1950 | POINT(-99.1308129585516 19.5043573631978)</span></div><div class="ace-line" id="magicdomid198"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,6}    | 1950 | POINT(-99.1312777220422 19.5030917576678)</span></div><div class="ace-line" id="magicdomid199"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,7}    | 1950 | POINT(-99.1313477598904 19.5027866866258)</span></div><div class="ace-line" id="magicdomid200"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,8}    | 1950 | POINT(-99.1317059511953 19.5008501125218)</span></div><div class="ace-line" id="magicdomid201"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,9}    | 1950 | POINT(-99.132103766927 19.4985768563207)</span></div><div class="ace-line" id="magicdomid202"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,10}   | 1950 | POINT(-99.1326408498902 19.4954584771179)</span></div><div class="ace-line" id="magicdomid203"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,11}   | 1950 | POINT(-99.1327967590812 19.4945591172585)</span></div><div class="ace-line" id="magicdomid204"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,12}   | 1950 | POINT(-99.1328387901805 19.4942450282798)</span></div><div class="ace-line" id="magicdomid205"><span class="author-a-1uz85ziyz87zz79zgz90zym54z70zz76zo"> {1,13}   | 1950 | POINT(-99.1329879548804 19.4934767189515)</span></div><br></div><div>¿Creo que está todo perdido, verdad? ¿o será que el tiempo viene en otro lado y no en una columna del archivo DBF?<br><br></div><div>Saludos y gracias<br><br></div><div>Ulises<br></div><div><br><br><br><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">El 24 de julio de 2015, 5:13, Alegre, Raquel <span dir="ltr"><<a href="mailto:r.alegre@ucl.ac.uk" target="_blank">r.alegre@ucl.ac.uk</a>></span> escribió:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">



<div style="word-wrap:break-word;color:rgb(0,0,0);font-size:14px;font-family:Calibri,sans-serif">
<div>
<div>Hola Ulises,</div>
<div><br>
</div>
<div>Posiblemente no la mejor solución, pero una posibilidad. Ten en cuenta que yo soy algo nueva en esto y seguro que otra gente puede ayudar mejor, pero ahi va mi intento: </div>
<div><br>
</div>
<div>1. - Yo ingeriría el shapefile en una DB PostGIS con ogr2ogr[1], por ejemplo. Algo como:</div>
<div><br>
</div>
<div>ogr2ogr -f "PostgreSQL" PG:"dbname=db etc" shapefile.shp</div>
<div><br>
</div>
<div>2.- Luego extraería los puntos junto con las IDs y los tiempos de las rutas en una tabla, usando ST_DumpPoints[2].</div>
<div><br>
</div>
<div>3.- A partir de la tabla de puntos, con ST_Makeline[3], ordenando los puntos por tiempos y agrupando por ID, te quedaría una tabla de LINESTRINGS con una entrada por ruta, con todos los puntos unidos en orden. Por ejemplo:</div>
<div><br>
</div>
<div>
<div>CREATE TABLE route_lines</div>
<div>AS (</div>
<div>    SELECT id,</div>
<div>        count(*) AS points_count,</div>
<div>        ST_MakeLine(location order by time) AS trajectory</div>
<div>    FROM (</div>
<div>        SELECT *</div>
<div>        FROM route_points</div>
<div>    )</div>
<div>    AS lines</div>
<div>    GROUP BY id</div>
<div>);</div>
</div>
<div><br>
</div>
<div>Probablemente esto se puede hacer en un solo paso, pero mi SQL no llega a tanto, me temo 0:-) </div>
<div><br>
</div>
<div>Espero que ayude!</div>
<div><br>
</div>
<div>[1] <a href="http://www.gdal.org/drv_pg.html" target="_blank">http://www.gdal.org/drv_pg.html</a></div>
<div>[2] <a href="http://postgis.net/docs/ST_DumpPoints.html" target="_blank">http://postgis.net/docs/ST_DumpPoints.html</a></div>
<div>[3] <a href="http://postgis.net/docs/ST_MakeLine.html" target="_blank">http://postgis.net/docs/ST_MakeLine.html</a></div>
<div><br>
</div>
<div>
<div></div>
</div>
</div>
<div><br>
</div>
<span>
<div style="font-family:Calibri;font-size:12pt;text-align:left;color:black;BORDER-BOTTOM:medium none;BORDER-LEFT:medium none;PADDING-BOTTOM:0in;PADDING-LEFT:0in;PADDING-RIGHT:0in;BORDER-TOP:#b5c4df 1pt solid;BORDER-RIGHT:medium none;PADDING-TOP:3pt">
<span style="font-weight:bold">From: </span>Ulises Ibarra<br>
<span style="font-weight:bold">Reply-To: </span>Capítulo Local de la comunidad hispano-hablante<br>
<span style="font-weight:bold">Date: </span>Friday, 24 July 2015 07:21<br>
<span style="font-weight:bold">To: </span>Capítulo Local de la comunidad hispano-hablante<br>
<span style="font-weight:bold">Subject: </span>[Spanish] Como unir fragmentos de líneas por sus extremos<br>
</div><div><div class="h5">
<div><br>
</div>
<span style="color:rgb(0,0,0);font-family:Calibri;font-size:medium;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;display:inline!important;float:none">Muy
 estimada lista:</span>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
<br>
</div>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
Tengo una duda enorme. Una amiga de comenta que tiene un archivo shp con 1500 rutas de GPS, cada ruta con un ID. Pero esas rutas tienen duscontinuidades, es decir, están rotas y ella quiere unirlas de forma más o menimos automática. ¿Podrían decirme sí hay
 algo que pueda hacer?</div>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
<br>
</div>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
Gracias por adelantado</div>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
<br>
</div>
<div style="color:rgb(0,0,0);font-family:Calibri;font-style:normal;font-variant:normal;font-weight:normal;letter-spacing:normal;line-height:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px">
Ulises</div>
</div></div></span>
</div>

<br>_______________________________________________<br>
Spanish mailing list<br>
<a href="http://lists.osgeo.org/mailman/listinfo/spanish" rel="noreferrer" target="_blank">http://lists.osgeo.org/mailman/listinfo/spanish</a><br>
<a href="http://es.osgeo.org" rel="noreferrer" target="_blank">http://es.osgeo.org</a><br>
<a href="http://twitter.com/osgeoes" rel="noreferrer" target="_blank">http://twitter.com/osgeoes</a><br></blockquote></div><br></div>