* Fixed a segfault with simple 'klayout -v'
* is_halfmanhattan polygon predicate, confine polygon splitting to halfmanhattan
Splitting any-angle polygons for area reduction in the
deep processor creates a risk of introducing grid-snap
artefacts. Hence we avoid this.
* Implemented a backup scheme for the file writer.
* Also consider backup files when the writer fails.
* Removed test exception
* Added config option for number of backups.
* WIP: first part of fix - generation of hole cutlines
First problem was that hole cutlines got extended
over the whole length and sometimes lead to coincident
edges which are difficult to resolve for the polygon
cutter.
* Refined solution, fixed#718
- disabled elaborate hole insertion procedure for now as the
performance impact has to be assessed yet and the new scheme
will break many tests
- stricter rejection of ambiguous configurations in the polygon cutter
- fallback is boolean AND now since there is no need to re-invoke the
polygon cutter (we can't do so as we made it more strict).
Performance-wise we replace a merge by an AND step which may even be
faster the output is smaller and the polygon cutter does not need
to be re-invoked.
* Compatibility with other STLs
* In the MacPorts environment, Ruby 2.7 is used.
* Updated the build tools for Mac supporting Qt-5.15.2 from MacPorts.
* Updated the Ruby environment for BigSur and Catalina.
* To update the Mac DMG maker to support Big Sur.
* Updated the resource files for Mac DMGs.
In 0.27 the main window got it's own configuration API
as now it's possible to instantiate a main window explicitly
and not application backs up configuration. Because GSI allows
as single base class only, we cannot derive from Dispatcher.
A delegate is used instead.
* Fixed issue #704. TODO: replace algorithm by De Boor, check if accuracy is still maintained.
* Switch spline interpolation algorithm to De Boor for better numerical stability.
* Updated tests with DXF accuracy test, provide a warning for unsupported SPLINE types.