<div dir="ltr"><div><div><div><div>Hey,<br></div>if you want to do such basic sewing (same point for beginning/end),<br></div>it should be easyer to sew by hand.<br><br></div>If you do real line merge, (some shared part of lines are fusioned),<br>
</div><div>it is more difficult has you want your data to be interpolated (what should happen if 2 shared segments have different data?).<br></div><div>Maybe you could try to trick the system by using line merge but putting an index to a point table.<br>
<br></div><div>For instance your lines <br><div>LINESTRING(5 5 5 5, 10 10 10 10)'),ST_GeomFromEWKT('LINESTRING(10 10 10 10 , 15 15 15 15)'))));</div><br></div><div>would become <br></div><div>linestring(5 5 1, 10 10 2), linestring(10 10 3, 15 15 4). etc.<br>
</div><div>and the point table would be <br>1 5 5<br>2 10 10 <br>3 10 10 <br>4 15 15<br><br></div><div>The trick is that if 3D is leaved alone by ST_LineMerge, you can use the index a-posteriori do do your computation on 4th coordinate (and retrieve Z at the same time)<br>
</div><div><br></div><div>Hovewer if you really want to do it right you should use the topology to get the shared parts and perform your custom data computation on it.<br><br>Cheers,<br>Rémi-C<br></div></div><div class="gmail_extra">
<br><br><div class="gmail_quote">2014-05-10 17:35 GMT+02:00 Paul Ramsey <span dir="ltr"><<a href="mailto:pramsey@cleverelephant.ca" target="_blank">pramsey@cleverelephant.ca</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
LineMerge is implemented via the GEOS library which, unlike PostGIS,<br>
only understands 3 dimensions max. So the 4th is sacrificed in the<br>
process. There's no good / easy way to retain it. you could write a<br>
post-process routine that took every output vertex and compared it to<br>
the input geometry to try and figure out what the original M dimension<br>
was, I suppose.<br>
<br>
P.<br>
<div><div class="h5"><br>
On Thu, May 8, 2014 at 8:38 AM, Paolo Importuni <<a href="mailto:imppao@gmail.com">imppao@gmail.com</a>> wrote:<br>
> Hi everybody,<br>
><br>
> I am trying to merge two linestring like in the following example:<br>
><br>
> select st_astext(st_linemerge(st_collect(ST_GeomFromEWKT('LINESTRING(5 5 5<br>
> 5, 10 10 10 10)'),ST_GeomFromEWKT('LINESTRING(10 10 10 10 , 15 15 15<br>
> 15)'))));<br>
><br>
><br>
> but the output is<br>
> "LINESTRING Z (5 5 5,10 10 10,15 15 15)"<br>
><br>
> that is,  the 4th dimension is lost.<br>
><br>
> Can anyone please explain  me the reason  and how to overcome this problem?<br>
><br>
> Thanks and best regards<br>
><br>
> Paolo<br>
><br>
</div></div>> _______________________________________________<br>
> postgis-users mailing list<br>
> <a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
> <a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
_______________________________________________<br>
postgis-users mailing list<br>
<a href="mailto:postgis-users@lists.osgeo.org">postgis-users@lists.osgeo.org</a><br>
<a href="http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users" target="_blank">http://lists.osgeo.org/cgi-bin/mailman/listinfo/postgis-users</a><br>
</blockquote></div><br></div>