octave-maintainers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: GSoC '16 - Boolean Operations on Polygons : Merge Code to geometry P


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 wrote

PhilipNienhuis wrote

amr mohamed wrote
Dear 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?

Philip
1-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 /others

Now 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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]