Geometry package:GSoC17: Difference between revisions

From Octave
Jump to navigation Jump to search
Line 43: Line 43:


=== Discoveries ===
=== Discoveries ===
* The performance of oct interface was much better than the current mex interface when the '''polygon Union''' (polyUnion) which was written as .oct file was used as benchmark against the current .mex interface to clipper in geometry 3.0.
* On benchmarking the '''polyunion' function in oct interface vs the mex interface, it is found that oct interface had twice as better performance as mex. As it doesn't ensure much advantage, it is not worthed to rewrite the package with oct.
  '''.oct interface''' : Elapsed time is 8.98838e-05 seconds.
 
  '''.mex interface''' : Elapsed time is 0.0109348 seconds.
== External links ==
== External links ==
* [https://github.com/piyush-jain1/GSoC17OctaveGeometry Github repository ] where the work is stored.
* [https://github.com/piyush-jain1/GSoC17OctaveGeometry Github repository ] where the work is stored.

Revision as of 16:12, 7 June 2017

Boolean operations with polygons

Developer: Piyush Jain

Mentor: JuanPi Carbajal

Objectives

  1. Implement a set of boolean operations and supporting function for acting on polygons.
  2. These include the standard set of potential operations such as union/OR, intersection/AND, difference/subtraction, and exclusiveor/XOR. 
  3. Other things to be implemented are the following functions: polybool, ispolycw, poly2ccw, poly2cw, poly2fv, polyjoin, and polysplit.

Expectations

  • Mentor:
  • Developer:
 1. Incorporating Clipper native oct interface instead of mex.
 2. Adding new algorithm as per the paper of F. Martínez, A.J. Rueda, F.R. Feito


Workplan

Tasks

  • Task 0:
 Benchmark Piyush polygon union written as an .oct file against the current .mex interface to clipper in geometry 3.0

If task 0 shows bad performance of mex, then

1. Clipper native oct interface instead of mex

if mex is ok

1. Add F. Martínez, A.J. Rueda, F.R. Feito algorithm

2. Salvage work from last GSoC

Maybe

  • Add CGAL interface for poly clipping


Discoveries

  • On benchmarking the polyunion' function in oct interface vs the mex interface, it is found that oct interface had twice as better performance as mex. As it doesn't ensure much advantage, it is not worthed to rewrite the package with oct.

External links