Explorar el Código

- modified the calling of the editor2object() slot function

Marius Stanciu hace 6 años
padre
commit
06ac0b03b1
Se han modificado 3 ficheros con 12 adiciones y 32 borrados
  1. 4 4
      FlatCAMApp.py
  2. 1 0
      README.md
  3. 7 28
      flatcamEditors/FlatCAMGrbEditor.py

+ 4 - 4
FlatCAMApp.py

@@ -1271,8 +1271,8 @@ class App(QtCore.QObject):
         self.ui.menufilesavedefaults.triggered.connect(self.on_file_savedefaults)
         self.ui.menufile_exit.triggered.connect(self.final_save)
 
-        self.ui.menueditedit.triggered.connect(self.object2editor)
-        self.ui.menueditok.triggered.connect(self.editor2object)
+        self.ui.menueditedit.triggered.connect(lambda: self.object2editor())
+        self.ui.menueditok.triggered.connect(lambda: self.editor2object())
 
         self.ui.menuedit_convertjoin.triggered.connect(self.on_edit_join)
         self.ui.menuedit_convertjoinexc.triggered.connect(self.on_edit_join_exc)
@@ -1370,7 +1370,7 @@ class App(QtCore.QObject):
         self.ui.popmenu_copy.triggered.connect(self.on_copy_object)
         self.ui.popmenu_delete.triggered.connect(self.on_delete)
         self.ui.popmenu_edit.triggered.connect(self.object2editor)
-        self.ui.popmenu_save.triggered.connect(self.editor2object)
+        self.ui.popmenu_save.triggered.connect(lambda: self.editor2object())
         self.ui.popmenu_move.triggered.connect(self.obj_move)
 
         self.ui.popmenu_properties.triggered.connect(self.obj_properties)
@@ -2036,7 +2036,7 @@ class App(QtCore.QObject):
         self.ui.newgeo_btn.triggered.connect(self.new_geometry_object)
         self.ui.newexc_btn.triggered.connect(self.new_excellon_object)
         self.ui.editgeo_btn.triggered.connect(self.object2editor)
-        self.ui.update_obj_btn.triggered.connect(self.editor2object)
+        self.ui.update_obj_btn.triggered.connect(lambda: self.editor2object())
         self.ui.delete_btn.triggered.connect(self.on_delete)
         self.ui.shell_btn.triggered.connect(self.on_toggle_shell)
 

+ 1 - 0
README.md

@@ -14,6 +14,7 @@ CAD program, and create G-Code for Isolation routing.
 - fixed plotting in Gerber Editor
 - working on GUI in Gerber Editor
 - added a Gcode end_command: default is M02
+- modified the calling of the editor2object() slot function
 
 31.03.2019
 

+ 7 - 28
flatcamEditors/FlatCAMGrbEditor.py

@@ -284,31 +284,10 @@ class FCApertureSelect(DrawTool):
     def select_shapes(self, pos):
         self.grb_editor_app.apertures_table.clearSelection()
 
-        try:
-            # for storage in self.grb_editor_app.storage_dict:
-            #     _, partial_closest_shape = self.grb_editor_app.storage_dict[storage].nearest(pos)
-            #     if partial_closest_shape is not None:
-            #         self.sel_storage.insert(partial_closest_shape)
-            #
-            # _, closest_shape = self.sel_storage.nearest(pos)
-
-            for storage in self.grb_editor_app.storage_dict:
-                for shape in self.grb_editor_app.storage_dict[storage].get_objects():
-                    self.sel_storage.insert(DrawToolShape(LineString(shape.geo.exterior)))
-
-            _, closest_shape = self.sel_storage.nearest(pos)
-
-
-            # constrain selection to happen only within a certain bounding box
-            x_coord, y_coord = closest_shape.geo[0].xy
-            delta = (x_coord[1] - x_coord[0])
-            # closest_shape_coords = (((x_coord[0] + delta / 2)), y_coord[0])
-            xmin = x_coord[0] - (0.7 * delta)
-            xmax = x_coord[0] + (1.7 * delta)
-            ymin = y_coord[0] - (0.7 * delta)
-            ymax = y_coord[0] + (1.7 * delta)
-        except StopIteration:
-            return ""
+        for storage in self.grb_editor_app.storage_dict:
+            for shape in self.grb_editor_app.storage_dict[storage].get_objects():
+                if Point(pos).within(shape.geo):
+                    self.sel_storage.insert(DrawToolShape(shape.geo))
 
         if pos[0] < xmin or pos[0] > xmax or pos[1] < ymin or pos[1] > ymax:
             self.grb_editor_app.selected = []
@@ -1298,7 +1277,7 @@ class FlatCAMGrbEditor(QtCore.QObject):
 
     def update_fcgerber(self, exc_obj):
         """
-        Create a new Excellon object that contain the edited content of the source Excellon object
+        Create a new Gerber object that contain the edited content of the source Excellon object
 
         :param exc_obj: FlatCAMExcellon
         :return: None
@@ -1307,8 +1286,8 @@ class FlatCAMGrbEditor(QtCore.QObject):
         # this dictionary will contain tooldia's as keys and a list of coordinates tuple as values
         # the values of this dict are coordinates of the holes (drills)
         edited_points = {}
-        for storage_tooldia in self.storage_dict:
-            for x in self.storage_dict[storage_tooldia].get_objects():
+        for storage_aperture in self.storage_dict:
+            for x in self.storage_dict[storage_aperture].get_objects():
 
                 # all x.geo in self.storage_dict[storage] are MultiLinestring objects
                 # each MultiLineString is made out of Linestrings