- fixed bug in Geometry Editor in buffer_int() function that created an Circular Reference Error when applying buffer interior on a geometry.

This commit is contained in:
Marius Stanciu 2019-04-06 01:02:59 +03:00
parent e8a0fcaef1
commit 1307026d83
3 changed files with 14 additions and 5 deletions

View File

@ -95,7 +95,7 @@ class App(QtCore.QObject):
# Version # Version
version = 8.913 version = 8.913
version_date = "2019/03/25" version_date = "2019/04/12"
beta = True beta = True
# current date now # current date now
@ -2169,8 +2169,9 @@ class App(QtCore.QObject):
edited_obj.options['ymin'] = ymin edited_obj.options['ymin'] = ymin
edited_obj.options['xmax'] = xmax edited_obj.options['xmax'] = xmax
edited_obj.options['ymax'] = ymax edited_obj.options['ymax'] = ymax
except AttributeError: except AttributeError as e:
self.inform.emit(_("[WARNING] Object empty after edit.")) self.inform.emit(_("[WARNING] Object empty after edit."))
log. debug("App.editor2object() --> Geometry --> %s" % str(e))
elif isinstance(edited_obj, FlatCAMGerber): elif isinstance(edited_obj, FlatCAMGerber):
obj_type = "Gerber" obj_type = "Gerber"
@ -2186,8 +2187,9 @@ class App(QtCore.QObject):
edited_obj.options['ymin'] = ymin edited_obj.options['ymin'] = ymin
edited_obj.options['xmax'] = xmax edited_obj.options['xmax'] = xmax
edited_obj.options['ymax'] = ymax edited_obj.options['ymax'] = ymax
except AttributeError: except AttributeError as e:
self.inform.emit(_("[WARNING] Object empty after edit.")) self.inform.emit(_("[WARNING] Object empty after edit."))
log.debug("App.editor2object() --> Gerber --> %s" % str(e))
elif isinstance(edited_obj, FlatCAMExcellon): elif isinstance(edited_obj, FlatCAMExcellon):
obj_type = "Excellon" obj_type = "Excellon"

View File

@ -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 5.04.2019
- Gerber Editor: made geometry transfer (which is slow) to Editor to be multithreaded - Gerber Editor: made geometry transfer (which is slow) to Editor to be multithreaded

View File

@ -3786,11 +3786,14 @@ class FlatCAMGeoEditor(QtCore.QObject):
self.selected = [] self.selected = []
self.replot() self.replot()
return return
if type(results) == MultiPolygon: if type(results) == MultiPolygon:
for poly in results: for poly in results:
self.add_shape(DrawToolShape(poly.interiors)) for interior in poly.interiors:
self.add_shape(DrawToolShape(interior))
else: else:
self.add_shape(DrawToolShape(results.interiors)) for interior in results:
self.add_shape(DrawToolShape(interior))
self.replot() self.replot()
self.app.inform.emit(_("[success] Interior buffer geometry created.")) self.app.inform.emit(_("[success] Interior buffer geometry created."))