Przeglądaj źródła

- final fix for issue #277. Previous fix was applied only for one case out of three.
- RELEASE 8.913

Marius Stanciu 6 lat temu
rodzic
commit
5020017cd7
2 zmienionych plików z 16 dodań i 2 usunięć
  1. 1 0
      README.md
  2. 15 2
      camlib.py

+ 1 - 0
README.md

@@ -15,6 +15,7 @@ CAD program, and create G-Code for Isolation routing.
 - Gerber Editor: added ability to change on the fly the aperture after one of the tools: Add Pad or Add Pad Array is activated
 - Gerber Editor: if a tool is cancelled via key shortcut ESCAPE, the selection is now deleted and any other action require a new selection
 - finished German translation (Google translated with some adjustments)
+- final fix for issue #277. Previous fix was applied only for one case out of three.
 - RELEASE 8.913
 
 12.04.2019

+ 15 - 2
camlib.py

@@ -5321,7 +5321,13 @@ class CNCjob(Geometry):
                                 current_tooldia = float('%.2f' % float(exobj.tools[tool]["C"]))
                             else:
                                 current_tooldia = float('%.3f' % float(exobj.tools[tool]["C"]))
-                            z_offset = float(self.tool_offset[current_tooldia]) * (-1)
+
+                            # TODO apply offset only when using the GUI, for TclCommand this will create an error
+                            # because the values for Z offset are created in build_ui()
+                            try:
+                                z_offset = float(self.tool_offset[current_tooldia]) * (-1)
+                            except KeyError:
+                                z_offset = 0
                             self.z_cut += z_offset
 
                             # Drillling!
@@ -5467,8 +5473,15 @@ class CNCjob(Geometry):
                             current_tooldia = float('%.2f' % float(exobj.tools[tool]["C"]))
                         else:
                             current_tooldia = float('%.3f' % float(exobj.tools[tool]["C"]))
-                        z_offset = float(self.tool_offset[current_tooldia]) * (-1)
+
+                        # TODO apply offset only when using the GUI, for TclCommand this will create an error
+                        # because the values for Z offset are created in build_ui()
+                        try:
+                            z_offset = float(self.tool_offset[current_tooldia]) * (-1)
+                        except KeyError:
+                            z_offset = 0
                         self.z_cut += z_offset
+
                         # Drillling!
                         altPoints = []
                         for point in points[tool]: