<div dir="ltr"><br><br><div class="gmail_quote"><div dir="ltr">On Thu, Nov 22, 2018 at 10:57 PM Regina Obe <<a href="mailto:lr@pcorp.us">lr@pcorp.us</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div class="m_-649692600507857115WordSection1"><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Not following how that helps getting rid of SFCGAL from the postgis library itself.  The GUC thing doesn't bother me that much and will annoy me even less when 3.0 comes out since we will not have two backends coexisting during upgrade for the life of PostGIS 3 major.<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">It's the fact it's part of postgis library and not a separate library like rtpostgis or postgis_topology that bugs me.<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">Because for packaging you can never cleanly with one compile a separate package for postgis_sfcgal that depends on postgis  and a package for just postgis.<u></u><u></u></span></p><p class="MsoNormal"><span style="font-size:11.0pt;font-family:"Calibri",sans-serif;color:#1f497d">Your postgis package will always be infected with postgis_sfcgal if it were ever to be used as a dependency in the postgis_sfcgal package.</span></p></div></div></blockquote><div><br></div><div>1. we remove branching on postgis/sfcgal for same functions. They always go to postgis.<br>2. if SFCGAL func version adds some value or behavior change, we untangle them by names (not just adding _SFCGAL, but semantic difference) and put sfcgal version into postgis_sfcgal extension.<br>3. functions like ST_StraightSkeleton skeleton straight to postgis_sfcgal.so.<br>4. postgis.so has no linkage to sfcgal.<br>5. postgis_sfcgal.so may have linkage to whatever it needs.<br>6. if there is a difference in implementation (postgis knows no TIN, sfcgal knows no curve) that goes to each of untangled function's manual entry.</div><div><br></div><div>Does it look like a plan?</div><div><br></div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div lang="EN-US" link="blue" vlink="purple"><div class="m_-649692600507857115WordSection1"><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><div style="border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt"><div><div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0in 0in 0in"><p class="MsoNormal"><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-devel [mailto:<a href="mailto:postgis-devel-bounces@lists.osgeo.org" target="_blank">postgis-devel-bounces@lists.osgeo.org</a>] <b>On Behalf Of </b>Darafei "Kom?pa" Praliaskouski<br><b>Sent:</b> Sunday, November 18, 2018 7:25 AM<br><b>To:</b> PostGIS Development Discussion <<a href="mailto:postgis-devel@lists.osgeo.org" target="_blank">postgis-devel@lists.osgeo.org</a>><br><b>Subject:</b> Re: [postgis-devel] Making SFCGAL mandatory<u></u><u></u></span></p></div></div><p class="MsoNormal"><u></u> <u></u></p><div><p class="MsoNormal" style="margin-bottom:12.0pt"><u></u> <u></u></p><div><div><p class="MsoNormal">сб, 17 нояб. 2018 г. в 11:23, Regina Obe <<a href="mailto:lr@pcorp.us" target="_blank">lr@pcorp.us</a>>:<u></u><u></u></p></div><blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in"><p class="MsoNormal">>  How about we just overload ST_Intesects, ST_3DIntersects and so forth.  We love overloading <span style="font-family:"Segoe UI Symbol",sans-serif">☺</span><br>>  And then get rid of the backend.<br><br>>  So anyone who wants to use the cgal version would do<br><br>> ST_Intersects(geom1,geom2, 'cgal')<br><br>Disregard my proposed solution here of overloading the functions.  I just realized that wouldn't solve the ultimate gripe I had of SFCGAL being part of the postgis lib.<br>It would only give more granular control of when to use SFCGAL/PostGIS overlapping functions than Backend GUC does.<u></u><u></u></p></blockquote><div><p class="MsoNormal"><u></u> <u></u></p></div><div><p class="MsoNormal">What if we treat it all just like GEOS version test?<u></u><u></u></p></div><div><p class="MsoNormal">i.e. there is always a function from SFCGAL, and if PostGIS is compiled without it it just says "please recompile", and if there is we're lucky and it just works. <br><br>Regarding solid and non-solid intersection - what if they are indeed two distinct operations, just like ST_Contains and ST_Intersects that mean basically the same thing for point-and-polygon, but start differing with higher dimensions? Maybe we can find two different words for solid intersection and non-solid intersection operations, and then one of them will be GEOS and another CGAL?<u></u><u></u></p></div><p class="MsoNormal"><br><u></u></p></div></div></div></div></div></blockquote></div><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div>Darafei Praliaskouski</div><div>Support me: <a href="http://patreon.com/komzpa" target="_blank">http://patreon.com/komzpa</a></div></div></div></div></div>