- fixed plotting in Gerber Editor
- working on GUI in Gerber Editor
This commit is contained in:
parent
0cca691422
commit
0a9148f30a
|
@ -2160,7 +2160,7 @@ class App(QtCore.QObject):
|
||||||
except AttributeError:
|
except AttributeError:
|
||||||
self.inform.emit(_("[WARNING] Object empty after edit."))
|
self.inform.emit(_("[WARNING] Object empty after edit."))
|
||||||
|
|
||||||
if isinstance(edited_obj, FlatCAMGerber):
|
elif isinstance(edited_obj, FlatCAMGerber):
|
||||||
obj_type = "Gerber"
|
obj_type = "Gerber"
|
||||||
if cleanup is None:
|
if cleanup is None:
|
||||||
self.grb_editor.update_fcgerber(edited_obj)
|
self.grb_editor.update_fcgerber(edited_obj)
|
||||||
|
|
|
@ -9,6 +9,11 @@ CAD program, and create G-Code for Isolation routing.
|
||||||
|
|
||||||
=================================================
|
=================================================
|
||||||
|
|
||||||
|
3.04.2019
|
||||||
|
|
||||||
|
- fixed plotting in Gerber Editor
|
||||||
|
- working on GUI in Gerber Editor
|
||||||
|
|
||||||
31.03.2019
|
31.03.2019
|
||||||
|
|
||||||
- fixed issue #281 by making generation of a convex shape for the freeform cutout in Tool Cutout a choice rather than the default
|
- fixed issue #281 by making generation of a convex shape for the freeform cutout in Tool Cutout a choice rather than the default
|
||||||
|
|
|
@ -1132,14 +1132,14 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
self.app.ui.snap_magnet.setVisible(True)
|
self.app.ui.snap_magnet.setVisible(True)
|
||||||
self.app.ui.corner_snap_btn.setVisible(True)
|
self.app.ui.corner_snap_btn.setVisible(True)
|
||||||
|
|
||||||
self.app.ui.exc_editor_menu.setDisabled(False)
|
self.app.ui.grb_editor_menu.setDisabled(False)
|
||||||
self.app.ui.exc_editor_menu.menuAction().setVisible(True)
|
self.app.ui.grb_editor_menu.menuAction().setVisible(True)
|
||||||
|
|
||||||
self.app.ui.update_obj_btn.setEnabled(True)
|
self.app.ui.update_obj_btn.setEnabled(True)
|
||||||
self.app.ui.e_editor_cmenu.setEnabled(True)
|
self.app.ui.grb_editor_cmenu.setEnabled(True)
|
||||||
|
|
||||||
self.app.ui.exc_edit_toolbar.setDisabled(False)
|
self.app.ui.grb_edit_toolbar.setDisabled(False)
|
||||||
self.app.ui.exc_edit_toolbar.setVisible(True)
|
self.app.ui.grb_edit_toolbar.setVisible(True)
|
||||||
# self.app.ui.snap_toolbar.setDisabled(False)
|
# self.app.ui.snap_toolbar.setDisabled(False)
|
||||||
|
|
||||||
# start with GRID toolbar activated
|
# start with GRID toolbar activated
|
||||||
|
@ -1152,7 +1152,7 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
def deactivate(self):
|
def deactivate(self):
|
||||||
self.disconnect_canvas_event_handlers()
|
self.disconnect_canvas_event_handlers()
|
||||||
self.clear()
|
self.clear()
|
||||||
self.app.ui.exc_edit_toolbar.setDisabled(True)
|
self.app.ui.grb_edit_toolbar.setDisabled(True)
|
||||||
|
|
||||||
settings = QSettings("Open Source", "FlatCAM")
|
settings = QSettings("Open Source", "FlatCAM")
|
||||||
if settings.contains("layout"):
|
if settings.contains("layout"):
|
||||||
|
@ -1180,8 +1180,8 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
self.app.ui.corner_snap_btn.setVisible(False)
|
self.app.ui.corner_snap_btn.setVisible(False)
|
||||||
|
|
||||||
# set the Editor Toolbar visibility to what was before entering in the Editor
|
# set the Editor Toolbar visibility to what was before entering in the Editor
|
||||||
self.app.ui.exc_edit_toolbar.setVisible(False) if self.toolbar_old_state is False \
|
self.app.ui.grb_edit_toolbar.setVisible(False) if self.toolbar_old_state is False \
|
||||||
else self.app.ui.exc_edit_toolbar.setVisible(True)
|
else self.app.ui.grb_edit_toolbar.setVisible(True)
|
||||||
|
|
||||||
# Disable visuals
|
# Disable visuals
|
||||||
self.shapes.enabled = False
|
self.shapes.enabled = False
|
||||||
|
@ -1191,12 +1191,13 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
# Tell the app that the editor is no longer active
|
# Tell the app that the editor is no longer active
|
||||||
self.editor_active = False
|
self.editor_active = False
|
||||||
|
|
||||||
self.app.ui.exc_editor_menu.setDisabled(True)
|
self.app.ui.grb_editor_menu.setDisabled(True)
|
||||||
self.app.ui.exc_editor_menu.menuAction().setVisible(False)
|
self.app.ui.grb_editor_menu.menuAction().setVisible(False)
|
||||||
|
|
||||||
self.app.ui.update_obj_btn.setEnabled(False)
|
self.app.ui.update_obj_btn.setEnabled(False)
|
||||||
|
|
||||||
self.app.ui.g_editor_cmenu.setEnabled(False)
|
self.app.ui.g_editor_cmenu.setEnabled(False)
|
||||||
|
self.app.ui.grb_editor_cmenu.setEnabled(False)
|
||||||
self.app.ui.e_editor_cmenu.setEnabled(False)
|
self.app.ui.e_editor_cmenu.setEnabled(False)
|
||||||
|
|
||||||
# Show original geometry
|
# Show original geometry
|
||||||
|
@ -1879,18 +1880,6 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
continue
|
continue
|
||||||
self.plot_shape(geometry=shape_plus.geo, color=self.app.defaults['global_draw_color'])
|
self.plot_shape(geometry=shape_plus.geo, color=self.app.defaults['global_draw_color'])
|
||||||
|
|
||||||
# for shape in self.storage.get_objects():
|
|
||||||
# if shape.geo is None: # TODO: This shouldn't have happened
|
|
||||||
# continue
|
|
||||||
#
|
|
||||||
# if shape in self.selected:
|
|
||||||
# self.plot_shape(geometry=shape.geo, color=self.app.defaults['global_sel_draw_color'], linewidth=2)
|
|
||||||
# continue
|
|
||||||
#
|
|
||||||
# self.plot_shape(geometry=shape.geo, color=self.app.defaults['global_draw_color'])
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
for shape in self.utility:
|
for shape in self.utility:
|
||||||
self.plot_shape(geometry=shape.geo, linewidth=1)
|
self.plot_shape(geometry=shape.geo, linewidth=1)
|
||||||
continue
|
continue
|
||||||
|
@ -1907,34 +1896,38 @@ class FlatCAMGrbEditor(QtCore.QObject):
|
||||||
:param linewidth: Width of lines in # of pixels.
|
:param linewidth: Width of lines in # of pixels.
|
||||||
:return: List of plotted elements.
|
:return: List of plotted elements.
|
||||||
"""
|
"""
|
||||||
plot_elements = []
|
# plot_elements = []
|
||||||
|
|
||||||
if geometry is None:
|
if geometry is None:
|
||||||
geometry = self.active_tool.geometry
|
geometry = self.active_tool.geometry
|
||||||
|
|
||||||
try:
|
try:
|
||||||
for geo in geometry:
|
self.shapes.add(shape=geometry.geo, color=color, face_color=color, layer=0)
|
||||||
plot_elements += self.plot_shape(geometry=geo, color=color, linewidth=linewidth)
|
except AttributeError:
|
||||||
|
|
||||||
## Non-iterable
|
|
||||||
except TypeError:
|
|
||||||
|
|
||||||
## DrawToolShape
|
|
||||||
if isinstance(geometry, DrawToolShape):
|
|
||||||
plot_elements += self.plot_shape(geometry=geometry.geo, color=color, linewidth=linewidth)
|
|
||||||
|
|
||||||
## Polygon: Descend into exterior and each interior.
|
|
||||||
if type(geometry) == Polygon:
|
|
||||||
plot_elements += self.plot_shape(geometry=geometry.exterior, color=color, linewidth=linewidth)
|
|
||||||
plot_elements += self.plot_shape(geometry=geometry.interiors, color=color, linewidth=linewidth)
|
|
||||||
|
|
||||||
if type(geometry) == LineString or type(geometry) == LinearRing:
|
|
||||||
plot_elements.append(self.shapes.add(shape=geometry, color=color, layer=0))
|
|
||||||
|
|
||||||
if type(geometry) == Point:
|
if type(geometry) == Point:
|
||||||
pass
|
return
|
||||||
|
self.shapes.add(shape=geometry, color=color, face_color=color+'AF', layer=0)
|
||||||
|
|
||||||
return plot_elements
|
# try:
|
||||||
|
# for geo in geometry:
|
||||||
|
# plot_elements += self.plot_shape(geometry=geo.geo, color=color, linewidth=linewidth)
|
||||||
|
#
|
||||||
|
# ## Non-iterable
|
||||||
|
# except TypeError:
|
||||||
|
#
|
||||||
|
# # ## DrawToolShape
|
||||||
|
# # if isinstance(geometry, DrawToolShape):
|
||||||
|
# # plot_elements += self.plot_shape(geometry=geometry.geo, color=color, linewidth=linewidth)
|
||||||
|
# #
|
||||||
|
# # ## Polygon: Descend into exterior and each interior.
|
||||||
|
# # if type(geometry) == Polygon:
|
||||||
|
# # plot_elements += self.plot_shape(geometry=geometry.exterior, color=color, linewidth=linewidth)
|
||||||
|
# # plot_elements += self.plot_shape(geometry=geometry.interiors, color=color, linewidth=linewidth)
|
||||||
|
# if type(geometry) == Point:
|
||||||
|
# pass
|
||||||
|
# else:
|
||||||
|
# plot_elements.append(self.shapes.add(shape=geometry, color=color, face_color=color, layer=0))
|
||||||
|
# return plot_elements
|
||||||
|
|
||||||
def on_shape_complete(self):
|
def on_shape_complete(self):
|
||||||
self.app.log.debug("on_shape_complete()")
|
self.app.log.debug("on_shape_complete()")
|
||||||
|
|
|
@ -451,6 +451,30 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||||
self.exc_move_drill_menuitem = self.exc_editor_menu.addAction(
|
self.exc_move_drill_menuitem = self.exc_editor_menu.addAction(
|
||||||
QtGui.QIcon('share/move32.png'),_( 'Move Drill(s)\tM'))
|
QtGui.QIcon('share/move32.png'),_( 'Move Drill(s)\tM'))
|
||||||
|
|
||||||
|
self.grb_editor_menu = QtWidgets.QMenu(_(">Gerber Editor<"))
|
||||||
|
self.menu.addMenu(self.grb_editor_menu)
|
||||||
|
|
||||||
|
self.grb_add_trace_menuitem = self.grb_editor_menu.addAction(
|
||||||
|
QtGui.QIcon('share/rectangle32.png'), _('Add Trace\tT'))
|
||||||
|
self.grb_add_zone_menuitem = self.exc_editor_menu.addAction(QtGui.QIcon('share/plus16.png'),
|
||||||
|
_('Add Zone\tZ'))
|
||||||
|
self.grb_editor_menu.addSeparator()
|
||||||
|
|
||||||
|
self.grb_resize_aperture_menuitem = self.grb_editor_menu.addAction(
|
||||||
|
QtGui.QIcon('share/resize16.png'), _('Resize Aperture\tR')
|
||||||
|
)
|
||||||
|
self.grb_copy_menuitem = self.grb_editor_menu.addAction(QtGui.QIcon('share/copy32.png'), _('Copy\tC'))
|
||||||
|
self.grb_delete_menuitem = self.grb_editor_menu.addAction(
|
||||||
|
QtGui.QIcon('share/deleteshape32.png'), _('Delete\tDEL')
|
||||||
|
)
|
||||||
|
self.grb_editor_menu.addSeparator()
|
||||||
|
|
||||||
|
self.grb_move_menuitem = self.grb_editor_menu.addAction(
|
||||||
|
QtGui.QIcon('share/move32.png'),_( 'Move\tM'))
|
||||||
|
|
||||||
|
self.grb_editor_menu.menuAction().setVisible(False)
|
||||||
|
self.grb_editor_menu.setDisabled(True)
|
||||||
|
|
||||||
self.geo_editor_menu.menuAction().setVisible(False)
|
self.geo_editor_menu.menuAction().setVisible(False)
|
||||||
self.geo_editor_menu.setDisabled(True)
|
self.geo_editor_menu.setDisabled(True)
|
||||||
|
|
||||||
|
@ -1404,6 +1428,12 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||||
self.g_editor_cmenu.addSeparator()
|
self.g_editor_cmenu.addSeparator()
|
||||||
self.draw_move = self.g_editor_cmenu.addAction(QtGui.QIcon('share/move32.png'), _("Move"))
|
self.draw_move = self.g_editor_cmenu.addAction(QtGui.QIcon('share/move32.png'), _("Move"))
|
||||||
|
|
||||||
|
self.grb_editor_cmenu = self.popMenu.addMenu(QtGui.QIcon('share/draw32.png'), _("Gerber Editor"))
|
||||||
|
self.grb_draw_track = self.grb_editor_cmenu.addAction(QtGui.QIcon('share/path32.png'), _("Track"))
|
||||||
|
self.grb_draw_zone = self.grb_editor_cmenu.addAction(QtGui.QIcon('share/rectangle32.png'), _("Zone"))
|
||||||
|
self.grb_editor_cmenu.addSeparator()
|
||||||
|
self.grb_move = self.grb_editor_cmenu.addAction(QtGui.QIcon('share/move32.png'), _("Move"))
|
||||||
|
|
||||||
self.e_editor_cmenu = self.popMenu.addMenu(QtGui.QIcon('share/drill32.png'), _("Exc Editor"))
|
self.e_editor_cmenu = self.popMenu.addMenu(QtGui.QIcon('share/drill32.png'), _("Exc Editor"))
|
||||||
self.drill = self.e_editor_cmenu.addAction(QtGui.QIcon('share/drill32.png'), _("Add Drill"))
|
self.drill = self.e_editor_cmenu.addAction(QtGui.QIcon('share/drill32.png'), _("Add Drill"))
|
||||||
self.drill_array = self.e_editor_cmenu.addAction(QtGui.QIcon('share/addarray32.png'), _("Add Drill Array"))
|
self.drill_array = self.e_editor_cmenu.addAction(QtGui.QIcon('share/addarray32.png'), _("Add Drill Array"))
|
||||||
|
@ -1548,6 +1578,7 @@ class FlatCAMGUI(QtWidgets.QMainWindow):
|
||||||
self.grid_snap_btn.trigger()
|
self.grid_snap_btn.trigger()
|
||||||
|
|
||||||
self.g_editor_cmenu.setEnabled(False)
|
self.g_editor_cmenu.setEnabled(False)
|
||||||
|
self.grb_editor_cmenu.setEnabled(False)
|
||||||
self.e_editor_cmenu.setEnabled(False)
|
self.e_editor_cmenu.setEnabled(False)
|
||||||
|
|
||||||
self.general_defaults_form = GeneralPreferencesUI()
|
self.general_defaults_form = GeneralPreferencesUI()
|
||||||
|
|
Loading…
Reference in New Issue