- fixed NCC Tool behavior when selecting tools for Isolation operation

This commit is contained in:
Marius Stanciu 2020-05-30 23:58:20 +03:00 committed by Marius
parent eee6b931c7
commit 808e1c5875
3 changed files with 21 additions and 10 deletions

View File

@ -501,6 +501,13 @@ class CutOut(AppTool):
"tools_paintmethod": self.app.defaults["tools_paintmethod"],
"tools_pathconnect": self.app.defaults["tools_pathconnect"],
"tools_paintcontour": self.app.defaults["tools_paintcontour"],
# Isolation Tool
"tools_iso_passes": self.app.defaults["tools_iso_passes"],
"tools_iso_overlap": self.app.defaults["tools_iso_overlap"],
"tools_iso_milling_type": self.app.defaults["tools_iso_milling_type"],
"tools_iso_follow": self.app.defaults["tools_iso_follow"],
"tools_iso_isotype": self.app.defaults["tools_iso_isotype"],
})
def on_freeform_cutout(self):
@ -912,7 +919,7 @@ class CutOut(AppTool):
if 0 in {self.cutting_dia}:
self.app.inform.emit('[ERROR_NOTCL] %s' %
_("Tool Diameter is zero value. Change it to a positive real number."))
return "Tool Diameter is zero value. Change it to a positive real number."
return
self.cutting_gapsize = float(self.gapsize.get_value())
@ -923,7 +930,7 @@ class CutOut(AppTool):
except Exception as e:
log.debug("CutOut.on_manual_cutout() --> %s" % str(e))
self.app.inform.emit('[ERROR_NOTCL] %s: %s' % (_("Could not retrieve Geometry object"), name))
return "Could not retrieve object: %s" % name
return
if self.app.is_legacy is False:
self.app.plotcanvas.graph_event_disconnect('key_press', self.app.ui.keyPressEvent)
@ -1306,10 +1313,10 @@ class CutOut(AppTool):
This only operates on the paths in the original geometry,
i.e. it converts polygons into paths.
:param x0: x coord for lower left vertice of the polygon.
:param y0: y coord for lower left vertice of the polygon.
:param x1: x coord for upper right vertice of the polygon.
:param y1: y coord for upper right vertice of the polygon.
:param x0: x coord for lower left vertex of the polygon.
:param y0: y coord for lower left vertex of the polygon.
:param x1: x coord for upper right vertex of the polygon.
:param y1: y coord for upper right vertex of the polygon.
:param solid_geo: Geometry from which to substract. If none, use the solid_geomety property of the object
:return: none
@ -1367,6 +1374,7 @@ def flatten(geometry):
def recursive_bounds(geometry):
"""
Return the bounds of the biggest bounding box in geometry, one that include all.
:param geometry: a iterable object that holds geometry
:return: Returns coordinates of rectangular bounds of geometry: (xmin, ymin, xmax, ymax).

View File

@ -1621,10 +1621,12 @@ class NonCopperClear(AppTool, Gerber):
"use a number."))
continue
if self.op_radio.get_value() == _("Isolation"):
self.iso_dia_list.append(self.tooldia)
else:
self.ncc_dia_list.append(self.tooldia)
for uid_k, uid_v in self.ncc_tools.items():
if round(uid_v['tooldia'], self.decimals) == round(self.tooldia, self.decimals):
if uid_v['data']['tools_nccoperation'] == "iso":
self.iso_dia_list.append(self.tooldia)
else:
self.ncc_dia_list.append(self.tooldia)
else:
self.app.inform.emit('[ERROR_NOTCL] %s' % _("No selected tools in Tool Table."))
return

View File

@ -21,6 +21,7 @@ CHANGELOG for FlatCAM beta
- added a Multi-color checkbox for the Geometry UI (will color differently tool geometry when the geometry is multitool)
- added a Multi-color checkbox for the Excellon UI (this way colors for each tool are easier to differentiate especially when the diameter is close)
- made the Shell Dock always show docked
- fixed NCC Tool behavior when selecting tools for Isolation operation
29.05.2020