diff --git a/FlatCAMApp.py b/FlatCAMApp.py index 44572693..4f22334d 100644 --- a/FlatCAMApp.py +++ b/FlatCAMApp.py @@ -95,7 +95,7 @@ class App(QtCore.QObject): # Version version = 8.913 - version_date = "2019/03/25" + version_date = "2019/04/12" beta = True # current date now @@ -2169,8 +2169,9 @@ class App(QtCore.QObject): edited_obj.options['ymin'] = ymin edited_obj.options['xmax'] = xmax edited_obj.options['ymax'] = ymax - except AttributeError: + except AttributeError as e: self.inform.emit(_("[WARNING] Object empty after edit.")) + log. debug("App.editor2object() --> Geometry --> %s" % str(e)) elif isinstance(edited_obj, FlatCAMGerber): obj_type = "Gerber" @@ -2186,8 +2187,9 @@ class App(QtCore.QObject): edited_obj.options['ymin'] = ymin edited_obj.options['xmax'] = xmax edited_obj.options['ymax'] = ymax - except AttributeError: + except AttributeError as e: self.inform.emit(_("[WARNING] Object empty after edit.")) + log.debug("App.editor2object() --> Gerber --> %s" % str(e)) elif isinstance(edited_obj, FlatCAMExcellon): obj_type = "Excellon" diff --git a/README.md b/README.md index 47180e61..92e17cee 100644 --- a/README.md +++ b/README.md @@ -9,6 +9,10 @@ CAD program, and create G-Code for Isolation routing. ================================================= +6.04.2019 + +- fixed bug in Geometry Editor in buffer_int() function that created an Circular Reference Error when applying buffer interior on a geometry. + 5.04.2019 - Gerber Editor: made geometry transfer (which is slow) to Editor to be multithreaded diff --git a/flatcamEditors/FlatCAMGeoEditor.py b/flatcamEditors/FlatCAMGeoEditor.py index 0036fd1c..16e9d085 100644 --- a/flatcamEditors/FlatCAMGeoEditor.py +++ b/flatcamEditors/FlatCAMGeoEditor.py @@ -3786,11 +3786,14 @@ class FlatCAMGeoEditor(QtCore.QObject): self.selected = [] self.replot() return + if type(results) == MultiPolygon: for poly in results: - self.add_shape(DrawToolShape(poly.interiors)) + for interior in poly.interiors: + self.add_shape(DrawToolShape(interior)) else: - self.add_shape(DrawToolShape(results.interiors)) + for interior in results: + self.add_shape(DrawToolShape(interior)) self.replot() self.app.inform.emit(_("[success] Interior buffer geometry created."))