← Back to team overview

kicad-developers team mailing list archive

Polygons support in Kicad.


In my recent commit, I removed Kbool from Kicad, and replaced it by Clipper.
See http://www.angusj.com/delphi/clipper.php

Currently, to handle polygons (mainly for zones), I am using boost::polygon and Clipper.
Clipper is, by far, more easier to use than Kbool, needs very few code to be used, has a better license ( BOOST libraries license), and is currently actively maintained.
It is currently used only to normalize polygons, i.e. to convert self intersecting polygons to simple polygons,
which is not possible with boost::polygon.
The best is to use only one library for polygons, but it is currently not possible.
Each library (boost::polygon and clipper) has advantages and drawbacks.

I also made a very serious code cleanup in polygon functions (obscure and dead code removed).
I hope it do not break Pcbnew.

I am thinking a good support of polygons is very important for Kicad.

Jean-Pierre CHARRAS

Follow ups