<div dir="ltr"><div class="gmail_default" style="font-size:small">Thank you,</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">It was great help.</div><div class="gmail_default" style="font-size:small"><br></div><div class="gmail_default" style="font-size:small">Later, I had built this:</div><div class="gmail_default" style="font-size:small">---</div><div class="gmail_default"><div class="gmail_default">WITH faultbuffer as (</div><div class="gmail_default">   SELECT gid,ST_Union(St_Buffer(the_geom,100)) as geom from fault4analyse group by gid</div><div class="gmail_default">)</div><div class="gmail_default"> </div><div class="gmail_default">SELECT road.gid,ST_Intersection(road.the_geom,faultbuffer.geom ) as road_fayBuffer from road4analyse as road , faultbuffer </div><div class="gmail_default">  WHERE ST_Intersects(road.the_geom, faultbuffer.geom ) </div><div class="gmail_default">---</div><div class="gmail_default"><br></div><div class="gmail_default">and it is reasonably fast.</div><div class="gmail_default"><br></div><div class="gmail_default">Does it do same thing you have offered ?</div><div class="gmail_default"><br></div><div class="gmail_default">kind regards</div><div><br></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Sun, Oct 30, 2016 at 10:55 AM, Regina Obe <span dir="ltr"><<a href="mailto:lr@pcorp.us" target="_blank">lr@pcorp.us</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="#0563C1" vlink="#954F72"><div class="m_-4362491688443786269WordSection1"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Use ST_DWithin  (works for both geography and geometry) and any kind of geometry, not just lines .  <u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">My example is for geography since units are always in meters.  For geometry units you have to specify based on your spatial_ref_sys and geometries have to have same spatial ref sys<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">something like below will return all roads that are within 100 meters of a fault line<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">SELECT l.gid, l.geog<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">FROM roads As l<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">WHERE EXISTS (SELECT 1 FROM fault_lines As fl WHERE ST_DWithin(fl.geog, l.geog, 100) );<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">If you need to know the exact fault lines, do a JOIN instead – keep in mind if a road is close enough to more than one fault line, it will be duplicated<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">SELECT l.gid, l.geog, <a href="http://fl.name" target="_blank">fl.name</a>, ST_Distance(l.geog, fl.geog) AS dist<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">FROM roads AS l INNER JOIN fault_lines AS fl ON (ST_DWithin(fl.geog, l.geog, 100) );<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">If you want jus the closes fault line within 100 meters use DISTINCT ON<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">SELECT DISTINCT ON(l.gid)  l.gid, l.geog, <a href="http://fl.name" target="_blank">fl.name</a>, ST_Distance(l.geog, fl.geog) AS dist<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">FROM roads AS l INNER JOIN fault_lines AS fl ON (ST_DWithin(fl.geog, l.geog, 100) )<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">ORDER BY l.gid, dist;<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Hope that helps,<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Regina<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><a href="http://www.postgis.us" target="_blank">http://www.postgis.us</a><u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><a href="http://www.paragoncorporation.com" target="_blank">http://www.paragoncorporation.<wbr>com</a><u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><a href="http://postgis.net" target="_blank">http://postgis.net</a><u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d"><u></u> <u></u></span></p><p class="MsoNormal" style="margin-left:.5in"><b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif">From:</span></b><span style="font-size:11.0pt;font-family:"Calibri",sans-serif"> postgis-users [mailto:<a href="mailto:postgis-users-bounces@lists.osgeo.org" target="_blank">postgis-users-bounces@<wbr>lists.osgeo.org</a>] <b>On Behalf Of </b>Ahmet Temiz<br><b>Sent:</b> Sunday, October 30, 2016 2:59 AM<br><b>To:</b> PostGIS Users Discussion <<a href="mailto:postgis-users@lists.osgeo.org" target="_blank">postgis-users@lists.osgeo.org</a><wbr>>; PostGIS Users Discussion <<a href="mailto:postgis-users@postgis.refractions.net" target="_blank">postgis-users@postgis.<wbr>refractions.net</a>><br><b>Subject:</b> [postgis-users] Line within range of another line?<u></u><u></u></span></p><div><div class="h5"><p class="MsoNormal" style="margin-left:.5in"><u></u> <u></u></p><p class="MsoNormal" style="margin-left:.5in">Hi,<u></u><u></u></p><div><p class="MsoNormal" style="margin-left:.5in">How can I find Line within range of another line?<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in">I mean I try to find line section within certain range of another line.<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in">For example, road lines close to fault lines.<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in"><u></u> <u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in">Ps : I know that using st_buffer causes performance issue.<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in">Can you give any advice?<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in"><u></u> <u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in">Regards<u></u><u></u></p></div><div><p class="MsoNormal" style="margin-left:.5in"><u></u> <u></u></p></div><p class="MsoNormal" style="margin-left:.5in"><br><br>-- <u></u><u></u></p><div><div><div><div><p class="MsoNormal" style="margin-left:.5in">Ahmet Temiz<br>Jeoloji Müh.<br>Afet ve Acil Durum Yönetimi Başkanlığı<br>Bilgi İşlem  Dairesi Başkanlığı-CBS Grubu<br><br><br>________________________<br><br>Ahmet Temiz<br>Geological Eng.<br>Information Systems - GIS Group<br>Disaster and Emergency Management<br>of Presidency<u></u><u></u></p></div></div></div></div><p class="MsoNormal" style="margin-left:.5in"><u></u> <u></u></p></div></div></div></div><br>______________________________<wbr>_________________<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/mailman/listinfo/postgis-users" rel="noreferrer" target="_blank">http://lists.osgeo.org/<wbr>mailman/listinfo/postgis-users</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div>Ahmet Temiz<br>Jeoloji Müh.<br>Afet ve Acil Durum Yönetimi Başkanlığı<br>Bilgi İşlem  Dairesi Başkanlığı-CBS Grubu<br><br><br>________________________<br><br>Ahmet Temiz<br>Geological Eng.<br>Information Systems - GIS Group<br>Disaster and Emergency Management<br>of Presidency</div></div></div></div></div>
</div>