Summer of Code - Getting Started: Difference between revisions

Line 271: Line 271:
* '''Potential mentor'''
* '''Potential mentor'''
: Carnë Draug
: Carnë Draug
== Missing Core Matlab functions ==
=== Implement boolean operations on polygons ===
The goal is to implement a Matlab-compatible set of boolean operations and supporting function for acting on polygons. These include the standard set of potential operations such as union/OR, intersection/AND, difference/subtraction, and exclusiveor/XOR. There are a variety of existing polygon libraries that implement much of the functionality and thus this would be incorporating the library into GNU Octave. The libraries with acceptable licenses are [http://www.angusj.com/delphi/clipper.php ClipperLib], [http://www.boost.org/doc/libs/1_60_0/libs/polygon/doc/index.htm Boost::Polygon], [https://github.com/boostorg/geometry Boost::Geometry], or [http://boolean.klaasholwerda.nl/bool.html kbool]. This would include implementing the following functions: polybool, ispolycw, poly2ccw, poly2cw, poly2fv, polyjoin, and polysplit. A partial implementation with ClipperLib and GPC can be found [https://sites.google.com/site/ulfgri/numerical/polybool here].
* '''Required skills'''
: Knowledge of C++; C; familiarity with boolean logic; polygons, windings, and geometry
* '''Difficulty'''
: Easy to Medium.
* '''Potential mentor'''
: John Swensen


<noinclude>
<noinclude>
1

edit