octave-maintainers
[Top][All Lists]
Advanced

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

Re: GNU Octave has been accepted as a GSoC 2016 mentor organization


From: PhilipNienhuis
Subject: Re: GNU Octave has been accepted as a GSoC 2016 mentor organization
Date: Wed, 2 Mar 2016 05:30:52 -0800 (PST)

John Swensen-3 wrote
>> On Feb 29, 2016, at 12:37 PM, Nir Krakauer <

> address@hidden

> > wrote:
>> 
>> 
>> Please let me know if you're interested in helping evaluate applications
>> and then mentor any accepted students.
>> 
>> Student applications will be due March 14-25, see
>> https://summerofcode.withgoogle.com
>> <https://summerofcode.withgoogle.com/>
>> 
>> —Nir
> 
> I haven’t been involved in Octave development a ton lately, but would like
> to get more involved now that I am past the grad student/postdoc days and
> got a faculty job. I have recently done some work with a couple of
> different polygon libraries and think that implementing many of the
> polygon functions (e.g. polybool, poly2ccw, poly2cw, poly2fv, polyjoin,
> polysplit, etc.) and would be something I could mentor. 
> 
> It looks like there is a partial implementation as MEX function (though
> not in Octave package format) at
> https://sites.google.com/site/ulfgri/numerical/polybool
> <https://sites.google.com/site/ulfgri/numerical/polybool> that uses
> both ClipperLib and GPC. I think GPC
> (http://www.cs.man.ac.uk/~toby/gpc/#Licensing
> <http://www.cs.man.ac.uk/~toby/gpc/#Licensing>) is out of the
> question because of their "free for private/hobbyist/education and
> non-free for products/commercial" licensing. ClipperLib
> (http://www.angusj.com/delphi/clipper.php
> <http://www.angusj.com/delphi/clipper.php>) used the Boost Software
> License. The Boost::Geometry (https://github.com/boostorg/geometry
> <https://github.com/boostorg/geometry>) and Boost::Polygon
> (http://www.boost.org/doc/libs/1_60_0/libs/polygon/doc/index.htm
> <http://www.boost.org/doc/libs/1_60_0/libs/polygon/doc/index.htm>)
> libraries could also be used and are license-friendly. 
> 
> Unfortunately, based on my evaluation of all three of these, GPC is by far
> the most robust solution that can handle self intersections and nearly
> parallel lines very, very well, but is likely not license-compatible with
> Octave. ClipperLib is the easiest to use and Boost::Geometry is the most
> powerful (but a bit confusing because of how much templating is going on).

As Juanpi mentioned, I found a few more options. E.g., have a look here:

http://boolean.klaasholwerda.nl/bool.html

AFAICS it is a fairly complete library and it is GPL.

I 'd like to use polygon clipping for the mapping package, to reduce large
GIS shapefiles to a more manageable size. Currently I use oc_polybool() in
OF octclip, but:
1. That doesn't seem to handle polygons with holes very well;
2. It doesn't build anymore with the very latest Octave dev sources
(AFAICS);
3. I also need to (linearly) interpolate Z- (and M-) values based on
clipping in the horizontal (XY) plane. With oc_polybool(), but with many
other libraries as well, that is a pain as one needs to reconstruct ratios
based on clipping points on the polygon sides;
4. Juanpi mentioned that the octclip maintainer isn't interested in
parallelization (openmpi). I haven't met the need for that yet but I can
imagine that in the future parallel clipping of sets of polygons may come in
handy.

In (much) later stages I'm also interested in 3D-clipping.

As to GSOC, I have no time for mentoring but I can jump in on ad-hoc basis. 

Philip




--
View this message in context: 
http://octave.1599824.n4.nabble.com/GNU-Octave-has-been-accepted-as-a-GSoC-2016-mentor-organization-tp4675114p4675154.html
Sent from the Octave - Maintainers mailing list archive at Nabble.com.



reply via email to

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