|
From: | Philip Nienhuis |
Subject: | Re: GSoC '16 - Boolean Operations on Polygons : Merge Code to geometry Package |
Date: | Mon, 15 Aug 2016 17:05:56 +0200 |
User-agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:43.0) Gecko/20100101 Firefox/43.0 SeaMonkey/2.40 |
Juan Pablo Carbajal wrote:
On Fri, Aug 12, 2016 at 4:10 AM, John Swensen <address@hidden> wrote:On Aug 11, 2016, at 1:00 PM, PhilipNienhuis <address@hidden> wrote: AMR_KELEG wrotePhilipNienhuis wroteamr mohamed wroteDear all, I would like to start contacting the Geometry package's maintainer so that we can decide how the code will be merged during the next days. I implemented some functions as cc files and the package currently has only .m functions. So, I will try to structure the src directory as in the image package (https://sourceforge.net/p/octave/image/ci/default/tree/src/). The functions make use of the Boost library (>=1.60) so my Mentor told me that we will need to make a dependency for this version of Boost instead of adding the boost-geometry library as a part of the package. However, If i were the user, i won't know how should i download the required version of Boost library and make octave's function use it.(mapping package maintainer here, just a quick note as I'm on vacation with patchy Internet access until somewhere next week.) Thanks for this work, a welcome contribution IMO. Once it is included in the geometry package the mapping package will make use of it as well, several functions for that are almost finished. See a.o., savannah.gnu.org/patch/index.php?9000 for some developments along that line. I have a few questions, mainly because I missed all progress on this GSOC project as I somehow missed blogs and progress reports -might be my own fault :-). 1. Is the entire boost library required or just a subset? Last time I looked boost comprised some 105 MB of a maze of include files, of which only a fairly small subset is required for boolean ops on polygons. 2. Did you implement interpolation of Z-values on clipped polygon sides? That is something I discussed with John Swensen; it would be a useful asset for the mapping package as -unlike its Matlab counterpart- many of its polygon functions accept polygons with Z-values and 3D polygons. 3. Similarly did you implement drawing polygons with holes using e.g., the polytri library? also something that came up in discussions with John S. 4. Where is your code currently hosted? Philip1-No, i have manually removed unnecessary parts of the library so it reduced to approximately 14MB. I think we can minimize the headers size to less than 10MB. 2-No, We discussed adding a z coordinate to the polygons during our first chat (last May) and he told me to postpone it for now. 3-Yes, we are drawing polygons with holes removed. But, functions currently aren't working well with complex self-intersecting polygons as the Boost Geometry dissolve function that is used to solve self-intersections is still unstable (under the library's extension and not part of the core library). 4-The clone of the package is hosted on bitbucket here: https://bitbucket.org/amr_keleg/octave-geometry And kindly find my blog where i posted the project's progress. https://amrkeleg.wordpress.com/Thanks Amr, it all seems good. Hopefully JuanPi will (geometry package maintainer) will jump in soon. As it is summer vacation season it might take a while. I do not have his email address at hand as I'm away from home as well so can't cc him. Philip -- View this message in context: http://octave.1599824.n4.nabble.com/GSoC-16-Boolean-Operations-on-Polygons-Merge-Code-to-geometry-Package-tp4679083p4679133.html Sent from the Octave - Maintainers mailing list archive at Nabble.com.Sorry, I have been out this week on vacation also and my contact with Amr has been less than previous weeks. I will get back in touch on Monday and help him get the configure.ac sorted out, in the case he hasn’t learned it on his own during this week. John S.Hi all, I am sorry for the delay. I am quite behind updating several patches I got for geometry. I will check the bitbucket repo and see how long it will take me to integrate these changes (hopefully not much!). After a quick look, what is the include/poli2try folder? Is it meant to be part of the package?
Juan /othersNow that I am (just) back from vacation it appears to me that Amr has implemented several functions that have already been submitted earlier on in patch #9000; most of them have matgeom counterparts that are already in the geometry package. In hindsight I think the communication between John S. as mentor and you and me as involved package maintainers could have been better :-(
Once I have my holiday backlog sorted out (~end of this week) I'll try to make an overview of the various implementations of the function we now have so that we can decide what goes where. Some performance tests might be helpful. IMO some of the new functions should go in geometry, some in mapping. Patch #9000 is still a good start.
As to polytri, that is a dependency hat Amr hasn't mentioned - it is a library for triangulation that can transform patches-with-holes into a triangulated surface for the filled part(s). It is merely meant for drawing polygons (and as such indispensable although polycut does merely the same - hopefully the polytri solution is faster).
Philip
[Prev in Thread] | Current Thread | [Next in Thread] |