diff --git a/FlatCAMApp.py b/FlatCAMApp.py
index b550d4ac..e53d5d24 100644
--- a/FlatCAMApp.py
+++ b/FlatCAMApp.py
@@ -354,6 +354,7 @@ class App(QtCore.QObject):
"excellon_tooldia": self.excellon_defaults_form.excellon_opt_group.tooldia_entry,
"excellon_slot_tooldia": self.excellon_defaults_form.excellon_opt_group.slot_tooldia_entry,
"excellon_gcode_type": self.excellon_defaults_form.excellon_opt_group.excellon_gcode_type_radio,
+
"geometry_plot": self.geometry_defaults_form.geometry_group.plot_cb,
"geometry_segx": self.geometry_defaults_form.geometry_group.segx_entry,
"geometry_segy": self.geometry_defaults_form.geometry_group.segy_entry,
@@ -363,16 +364,9 @@ class App(QtCore.QObject):
"geometry_feedrate_z": self.geometry_defaults_form.geometry_group.cncplunge_entry,
"geometry_feedrate_rapid": self.geometry_defaults_form.geometry_group.cncfeedrate_rapid_entry,
"geometry_cnctooldia": self.geometry_defaults_form.geometry_group.cnctooldia_entry,
- "geometry_painttooldia": self.geometry_defaults_form.geometry_group.painttooldia_entry,
"geometry_spindlespeed": self.geometry_defaults_form.geometry_group.cncspindlespeed_entry,
"geometry_dwell": self.geometry_defaults_form.geometry_group.dwell_cb,
"geometry_dwelltime": self.geometry_defaults_form.geometry_group.dwelltime_entry,
- "geometry_paintoverlap": self.geometry_defaults_form.geometry_group.paintoverlap_entry,
- "geometry_paintmargin": self.geometry_defaults_form.geometry_group.paintmargin_entry,
- "geometry_paintmethod": self.geometry_defaults_form.geometry_group.paintmethod_combo,
- "geometry_selectmethod": self.geometry_defaults_form.geometry_group.selectmethod_combo,
- "geometry_pathconnect": self.geometry_defaults_form.geometry_group.pathconnect_cb,
- "geometry_paintcontour": self.geometry_defaults_form.geometry_group.contour_cb,
"geometry_ppname_g": self.geometry_defaults_form.geometry_group.pp_geometry_name_cb,
"geometry_toolchange": self.geometry_defaults_form.geometry_group.toolchange_cb,
"geometry_toolchangez": self.geometry_defaults_form.geometry_group.toolchangez_entry,
@@ -383,6 +377,7 @@ class App(QtCore.QObject):
"geometry_depthperpass": self.geometry_defaults_form.geometry_group.depthperpass_entry,
"geometry_extracut": self.geometry_defaults_form.geometry_group.extracut_cb,
"geometry_circle_steps": self.geometry_defaults_form.geometry_group.circle_steps_entry,
+
"cncjob_plot": self.cncjob_defaults_form.cncjob_group.plot_cb,
"cncjob_tooldia": self.cncjob_defaults_form.cncjob_group.tooldia_entry,
"cncjob_coords_decimals": self.cncjob_defaults_form.cncjob_group.coords_dec_entry,
@@ -402,7 +397,15 @@ class App(QtCore.QObject):
"tools_cutouttooldia": self.tools_defaults_form.tools_cutout_group.cutout_tooldia_entry,
"tools_cutoutmargin": self.tools_defaults_form.tools_cutout_group.cutout_margin_entry,
"tools_cutoutgapsize": self.tools_defaults_form.tools_cutout_group.cutout_gap_entry,
- "tools_gaps_rect": self.tools_defaults_form.tools_cutout_group.gaps_radio
+ "tools_gaps_rect": self.tools_defaults_form.tools_cutout_group.gaps_radio,
+
+ "tools_painttooldia": self.tools_defaults_form.tools_paint_group.painttooldia_entry,
+ "tools_paintoverlap": self.tools_defaults_form.tools_paint_group.paintoverlap_entry,
+ "tools_paintmargin": self.tools_defaults_form.tools_paint_group.paintmargin_entry,
+ "tools_paintmethod": self.tools_defaults_form.tools_paint_group.paintmethod_combo,
+ "tools_selectmethod": self.tools_defaults_form.tools_paint_group.selectmethod_combo,
+ "tools_pathconnect": self.tools_defaults_form.tools_paint_group.pathconnect_cb,
+ "tools_paintcontour": self.tools_defaults_form.tools_paint_group.contour_cb
}
# loads postprocessors
self.postprocessors = load_postprocessors(self)
@@ -439,6 +442,35 @@ class App(QtCore.QObject):
"global_workspaceT": "A4P",
"global_toolbar_view": 31,
+ "global_background_timeout": 300000, # Default value is 5 minutes
+ "global_verbose_error_level": 0, # Shell verbosity 0 = default
+ # (python trace only for unknown errors),
+ # 1 = show trace(show trace allways),
+ # 2 = (For the future).
+
+ # Persistence
+ "global_last_folder": None,
+ "global_last_save_folder": None,
+
+ # Default window geometry
+ "global_def_win_x": 100,
+ "global_def_win_y": 100,
+ "global_def_win_w": 1024,
+ "global_def_win_h": 650,
+
+ # Constants...
+ "global_defaults_save_period_ms": 20000, # Time between default saves.
+ "global_shell_shape": [500, 300], # Shape of the shell in pixels.
+ "global_shell_at_startup": False, # Show the shell at startup.
+ "global_recent_limit": 10, # Max. items in recent list.
+ "fit_key": '1',
+ "zoom_out_key": '2',
+ "zoom_in_key": '3',
+ "grid_toggle_key": 'G',
+ "zoom_ratio": 1.5,
+ "global_point_clipboard_format": "(%.4f, %.4f)",
+ "global_zdownrate": None,
+
"gerber_plot": True,
"gerber_solid": True,
"gerber_multicolored": False,
@@ -448,14 +480,15 @@ class App(QtCore.QObject):
"gerber_combine_passes": False,
"gerber_milling_type": "cl",
- "gerber_noncoppermargin": 0.0,
+ "gerber_noncoppermargin": 0.1,
"gerber_noncopperrounded": False,
- "gerber_bboxmargin": 0.0,
+ "gerber_bboxmargin": 0.1,
"gerber_bboxrounded": False,
"gerber_circle_steps": 64,
+ "gerber_use_buffer_for_union": True,
"excellon_plot": True,
- "excellon_solid": False,
+ "excellon_solid": True,
"excellon_format_upper_in": 2,
"excellon_format_lower_in": 4,
"excellon_format_upper_mm": 3,
@@ -499,13 +532,6 @@ class App(QtCore.QObject):
"geometry_spindlespeed": None,
"geometry_dwell": False,
"geometry_dwelltime": 1,
- "geometry_painttooldia": 0.07,
- "geometry_paintoverlap": 0.15,
- "geometry_paintmargin": 0.0,
- "geometry_paintmethod": "seed",
- "geometry_selectmethod": "single",
- "geometry_pathconnect": True,
- "geometry_paintcontour": True,
"geometry_ppname_g": 'default',
"geometry_depthperpass": 0.002,
"geometry_multidepth": False,
@@ -522,45 +548,25 @@ class App(QtCore.QObject):
"tools_ncctools": "1.0, 0.5",
"tools_nccoverlap": 0.4,
- "tools_nccmargin": 1,
+ "tools_nccmargin": 0.1,
"tools_nccmethod": "seed",
"tools_nccconnect": True,
"tools_ncccontour": True,
"tools_nccrest": False,
- "tools_cutouttooldia": 0.07,
+
+ "tools_cutouttooldia": 0.1,
"tools_cutoutmargin": 0.1,
"tools_cutoutgapsize": 0.15,
"tools_gaps_rect": "4",
- "global_background_timeout": 300000, # Default value is 5 minutes
- "global_verbose_error_level": 0, # Shell verbosity 0 = default
- # (python trace only for unknown errors),
- # 1 = show trace(show trace allways),
- # 2 = (For the future).
+ "tools_painttooldia": 0.07,
+ "tools_paintoverlap": 0.15,
+ "tools_paintmargin": 0.0,
+ "tools_paintmethod": "seed",
+ "tools_selectmethod": "single",
+ "tools_pathconnect": True,
+ "tools_paintcontour": True
- # Persistence
- "global_last_folder": None,
- "global_last_save_folder": None,
-
- # Default window geometry
- "global_def_win_x": 100,
- "global_def_win_y": 100,
- "global_def_win_w": 1024,
- "global_def_win_h": 650,
-
- # Constants...
- "global_defaults_save_period_ms": 20000, # Time between default saves.
- "global_shell_shape": [500, 300], # Shape of the shell in pixels.
- "global_shell_at_startup": False, # Show the shell at startup.
- "global_recent_limit": 10, # Max. items in recent list.
- "fit_key": '1',
- "zoom_out_key": '2',
- "zoom_in_key": '3',
- "grid_toggle_key": 'G',
- "zoom_ratio": 1.5,
- "global_point_clipboard_format": "(%.4f, %.4f)",
- "global_zdownrate": None,
- "gerber_use_buffer_for_union": True
})
###############################
@@ -648,10 +654,6 @@ class App(QtCore.QObject):
"geometry_dwell": self.geometry_options_form.geometry_group.dwell_cb,
"geometry_dwelltime": self.geometry_options_form.geometry_group.dwelltime_entry,
"geometry_cnctooldia": self.geometry_options_form.geometry_group.cnctooldia_entry,
- "geometry_painttooldia": self.geometry_options_form.geometry_group.painttooldia_entry,
- "geometry_paintoverlap": self.geometry_options_form.geometry_group.paintoverlap_entry,
- "geometry_paintmargin": self.geometry_options_form.geometry_group.paintmargin_entry,
- "geometry_selectmethod": self.geometry_options_form.geometry_group.selectmethod_combo,
"geometry_ppname_g": self.geometry_options_form.geometry_group.pp_geometry_name_cb,
"geometry_toolchange": self.geometry_options_form.geometry_group.toolchange_cb,
"geometry_toolchangez": self.geometry_options_form.geometry_group.toolchangez_entry,
@@ -675,6 +677,14 @@ class App(QtCore.QObject):
"tools_cutoutmargin": self.tools_options_form.tools_cutout_group.cutout_margin_entry,
"tools_cutoutgapsize": self.tools_options_form.tools_cutout_group.cutout_gap_entry,
"tools_gaps": self.tools_options_form.tools_cutout_group.gaps_radio,
+
+ "tools_painttooldia": self.tools_options_form.tools_paint_group.painttooldia_entry,
+ "tools_paintoverlap": self.tools_options_form.tools_paint_group.paintoverlap_entry,
+ "tools_paintmargin": self.tools_options_form.tools_paint_group.paintmargin_entry,
+ "tools_paintmethod": self.tools_options_form.tools_paint_group.paintmethod_combo,
+ "tools_selectmethod": self.tools_options_form.tools_paint_group.selectmethod_combo,
+ "tools_pathconnect": self.tools_options_form.tools_paint_group.pathconnect_cb,
+ "tools_paintcontour": self.tools_options_form.tools_paint_group.contour_cb
}
for name in list(self.postprocessors.keys()):
@@ -687,6 +697,11 @@ class App(QtCore.QObject):
"units": "IN",
"global_gridx": 1.0,
"global_gridy": 1.0,
+ "global_background_timeout": 300000, # Default value is 5 minutes
+ "global_verbose_error_level": 0, # Shell verbosity:
+ # 0 = default(python trace only for unknown errors),
+ # 1 = show trace(show trace allways), 2 = (For the future).
+
"gerber_plot": True,
"gerber_solid": True,
"gerber_multicolored": False,
@@ -698,6 +713,7 @@ class App(QtCore.QObject):
"gerber_noncopperrounded": False,
"gerber_bboxmargin": 0.0,
"gerber_bboxrounded": False,
+
"excellon_plot": True,
"excellon_solid": False,
"excellon_format_upper_in": 2,
@@ -736,10 +752,6 @@ class App(QtCore.QObject):
"geometry_dwell": True,
"geometry_dwelltime": 1000,
"geometry_cnctooldia": 0.016,
- "geometry_painttooldia": 0.07,
- "geometry_paintoverlap": 0.15,
- "geometry_paintmargin": 0.0,
- "geometry_selectmethod": "single",
"geometry_toolchange": False,
"geometry_toolchangez": 2.0,
"geometry_toolchangexy": "0.0, 0.0",
@@ -763,10 +775,14 @@ class App(QtCore.QObject):
"tools_cutoutgapsize": 0.15,
"tools_gaps": "4",
- "global_background_timeout": 300000, # Default value is 5 minutes
- "global_verbose_error_level": 0, # Shell verbosity:
- # 0 = default(python trace only for unknown errors),
- # 1 = show trace(show trace allways), 2 = (For the future).
+ "tools_painttooldia": 0.07,
+ "tools_paintoverlap": 0.15,
+ "tools_paintmargin": 0.0,
+ "tools_paintmethod": "seed",
+ "tools_selectmethod": "single",
+ "tools_pathconnect": True,
+ "tools_paintcontour": True
+
})
self.options.update(self.defaults) # Copy app defaults to project options
diff --git a/FlatCAMGUI.py b/FlatCAMGUI.py
index 269dcdce..6ad444ad 100644
--- a/FlatCAMGUI.py
+++ b/FlatCAMGUI.py
@@ -960,10 +960,18 @@ class ToolsPreferencesUI(QtWidgets.QWidget):
self.tools_ncc_group = ToolsNCCPrefGroupUI()
self.tools_ncc_group.setFixedWidth(260)
+ self.tools_paint_group = ToolsPaintPrefGroupUI()
+ self.tools_paint_group.setFixedWidth(260)
+
self.tools_cutout_group = ToolsCutoutPrefGroupUI()
self.tools_cutout_group.setFixedWidth(260)
- self.layout.addWidget(self.tools_ncc_group)
+ self.vlay = QtWidgets.QVBoxLayout()
+ self.vlay.addWidget(self.tools_ncc_group)
+ self.vlay.addWidget(self.tools_paint_group)
+
+ self.layout.addLayout(self.vlay)
+
self.layout.addWidget(self.tools_cutout_group)
self.layout.addStretch()
@@ -2187,101 +2195,6 @@ class GeometryPrefGroupUI(OptionsGroupUI):
self.segy_entry = FCEntry()
grid2.addWidget(self.segy_entry, 18, 1)
- # ------------------------------
- ## Paint area
- # ------------------------------
- self.paint_label = QtWidgets.QLabel('Paint Area:')
- self.paint_label.setToolTip(
- "Creates tool paths to cover the\n"
- "whole area of a polygon (remove\n"
- "all copper). You will be asked\n"
- "to click on the desired polygon."
- )
- self.layout.addWidget(self.paint_label)
-
- grid4 = QtWidgets.QGridLayout()
- self.layout.addLayout(grid4)
-
- # Tool dia
- ptdlabel = QtWidgets.QLabel('Tool dia:')
- ptdlabel.setToolTip(
- "Diameter of the tool to\n"
- "be used in the operation."
- )
- grid4.addWidget(ptdlabel, 0, 0)
-
- self.painttooldia_entry = LengthEntry()
- grid4.addWidget(self.painttooldia_entry, 0, 1)
-
- # Overlap
- ovlabel = QtWidgets.QLabel('Overlap:')
- ovlabel.setToolTip(
- "How much (fraction) of the tool\n"
- "width to overlap each tool pass."
- )
- grid4.addWidget(ovlabel, 1, 0)
- self.paintoverlap_entry = LengthEntry()
- grid4.addWidget(self.paintoverlap_entry, 1, 1)
-
- # Margin
- marginlabel = QtWidgets.QLabel('Margin:')
- marginlabel.setToolTip(
- "Distance by which to avoid\n"
- "the edges of the polygon to\n"
- "be painted."
- )
- grid4.addWidget(marginlabel, 2, 0)
- self.paintmargin_entry = LengthEntry()
- grid4.addWidget(self.paintmargin_entry, 2, 1)
-
- # Method
- methodlabel = QtWidgets.QLabel('Method:')
- methodlabel.setToolTip(
- "Algorithm to paint the polygon:
"
- "Standard: Fixed step inwards.
"
- "Seed-based: Outwards from seed."
- )
- grid4.addWidget(methodlabel, 3, 0)
- self.paintmethod_combo = RadioSet([
- {"label": "Standard", "value": "standard"},
- {"label": "Seed-based", "value": "seed"},
- {"label": "Straight lines", "value": "lines"}
- ], orientation='vertical', stretch=False)
- grid4.addWidget(self.paintmethod_combo, 3, 1)
-
- # Connect lines
- pathconnectlabel = QtWidgets.QLabel("Connect:")
- pathconnectlabel.setToolTip(
- "Draw lines between resulting\n"
- "segments to minimize tool lifts."
- )
- grid4.addWidget(pathconnectlabel, 4, 0)
- self.pathconnect_cb = FCCheckBox()
- grid4.addWidget(self.pathconnect_cb, 4, 1)
-
- # Paint contour
- contourlabel = QtWidgets.QLabel("Contour:")
- contourlabel.setToolTip(
- "Cut around the perimeter of the polygon\n"
- "to trim rough edges."
- )
- grid4.addWidget(contourlabel, 5, 0)
- self.contour_cb = FCCheckBox()
- grid4.addWidget(self.contour_cb, 5, 1)
-
- # Polygon selection
- selectlabel = QtWidgets.QLabel('Selection:')
- selectlabel.setToolTip(
- "How to select the polygons to paint."
- )
- grid4.addWidget(selectlabel, 6, 0)
- self.selectmethod_combo = RadioSet([
- {"label": "Single", "value": "single"},
- {"label": "All", "value": "all"},
- # {"label": "Rectangle", "value": "rectangle"}
- ])
- grid4.addWidget(self.selectmethod_combo, 6, 1)
-
self.layout.addStretch()
@@ -2543,6 +2456,111 @@ class ToolsCutoutPrefGroupUI(OptionsGroupUI):
self.layout.addStretch()
+class ToolsPaintPrefGroupUI(OptionsGroupUI):
+ def __init__(self, parent=None):
+ # OptionsGroupUI.__init__(self, "Paint Area Tool Options", parent=parent)
+ super(ToolsPaintPrefGroupUI, self).__init__(self)
+
+ self.setTitle(str("Paint Area Tool Options"))
+
+ # ------------------------------
+ ## Paint area
+ # ------------------------------
+ self.paint_label = QtWidgets.QLabel('Paint Area:')
+ self.paint_label.setToolTip(
+ "Creates tool paths to cover the\n"
+ "whole area of a polygon (remove\n"
+ "all copper). You will be asked\n"
+ "to click on the desired polygon."
+ )
+ self.layout.addWidget(self.paint_label)
+
+ grid0 = QtWidgets.QGridLayout()
+ self.layout.addLayout(grid0)
+
+ # Tool dia
+ ptdlabel = QtWidgets.QLabel('Tool dia:')
+ ptdlabel.setToolTip(
+ "Diameter of the tool to\n"
+ "be used in the operation."
+ )
+ grid0.addWidget(ptdlabel, 0, 0)
+
+ self.painttooldia_entry = LengthEntry()
+ grid0.addWidget(self.painttooldia_entry, 0, 1)
+
+ # Overlap
+ ovlabel = QtWidgets.QLabel('Overlap:')
+ ovlabel.setToolTip(
+ "How much (fraction) of the tool\n"
+ "width to overlap each tool pass."
+ )
+ grid0.addWidget(ovlabel, 1, 0)
+ self.paintoverlap_entry = LengthEntry()
+ grid0.addWidget(self.paintoverlap_entry, 1, 1)
+
+ # Margin
+ marginlabel = QtWidgets.QLabel('Margin:')
+ marginlabel.setToolTip(
+ "Distance by which to avoid\n"
+ "the edges of the polygon to\n"
+ "be painted."
+ )
+ grid0.addWidget(marginlabel, 2, 0)
+ self.paintmargin_entry = LengthEntry()
+ grid0.addWidget(self.paintmargin_entry, 2, 1)
+
+ # Method
+ methodlabel = QtWidgets.QLabel('Method:')
+ methodlabel.setToolTip(
+ "Algorithm to paint the polygon:
"
+ "Standard: Fixed step inwards.
"
+ "Seed-based: Outwards from seed."
+ )
+ grid0.addWidget(methodlabel, 3, 0)
+ self.paintmethod_combo = RadioSet([
+ {"label": "Standard", "value": "standard"},
+ {"label": "Seed-based", "value": "seed"},
+ {"label": "Straight lines", "value": "lines"}
+ ], orientation='vertical', stretch=False)
+ grid0.addWidget(self.paintmethod_combo, 3, 1)
+
+ # Connect lines
+ pathconnectlabel = QtWidgets.QLabel("Connect:")
+ pathconnectlabel.setToolTip(
+ "Draw lines between resulting\n"
+ "segments to minimize tool lifts."
+ )
+ grid0.addWidget(pathconnectlabel, 4, 0)
+ self.pathconnect_cb = FCCheckBox()
+ grid0.addWidget(self.pathconnect_cb, 4, 1)
+
+ # Paint contour
+ contourlabel = QtWidgets.QLabel("Contour:")
+ contourlabel.setToolTip(
+ "Cut around the perimeter of the polygon\n"
+ "to trim rough edges."
+ )
+ grid0.addWidget(contourlabel, 5, 0)
+ self.contour_cb = FCCheckBox()
+ grid0.addWidget(self.contour_cb, 5, 1)
+
+ # Polygon selection
+ selectlabel = QtWidgets.QLabel('Selection:')
+ selectlabel.setToolTip(
+ "How to select the polygons to paint."
+ )
+ grid0.addWidget(selectlabel, 6, 0)
+ self.selectmethod_combo = RadioSet([
+ {"label": "Single", "value": "single"},
+ {"label": "All", "value": "all"},
+ # {"label": "Rectangle", "value": "rectangle"}
+ ])
+ grid0.addWidget(self.selectmethod_combo, 6, 1)
+
+ self.layout.addStretch()
+
+
class FlatCAMActivityView(QtWidgets.QWidget):
def __init__(self, parent=None):
diff --git a/README.md b/README.md
index 6101db65..4cb52c9f 100644
--- a/README.md
+++ b/README.md
@@ -13,7 +13,7 @@ CAD program, and create G-Code for Isolation routing.
- fixed the FlatCAMGerber.merge() function
- added a new menu entry for the Gerber Join function: Edit -> Conversions -> "Join Gerber(s) to Gerber" allowing joining Gerber objects into a final Gerber object
-
+- moved Paint Tool defaults from Geometry section to the Tools section in Edit -> Preferences
27.01.2018
@@ -23,7 +23,7 @@ CAD program, and create G-Code for Isolation routing.
- added options for trace segmentation that can be useful for auto-levelling (code snippet from Lei Zheng from a rejected pull request on FlatCAM https://bitbucket.org/realthunder/ )
- added shortcut key 'L' for creating 'New Excellon'
- added shortcut key combo 'SHIFT+S' for Running a Script.
-- modified grbl_laser postprocessor file so it includes a Sxxxx command on the line with M02 (laser active) whenever a value is enter in the Spindlespeed entry field
+- modified grbl_laser postprocessor file so it includes a Sxxxx command on the line with M03 (laser active) whenever a value is enter in the Spindlespeed entry field
- remade the EDIT -> PREFERENCES window, the Excellon and Gerber sections. Created a new section named TOOLS
26.01.2019
diff --git a/flatcamTools/ToolNonCopperClear.py b/flatcamTools/ToolNonCopperClear.py
index a603ffe7..7cd4bd70 100644
--- a/flatcamTools/ToolNonCopperClear.py
+++ b/flatcamTools/ToolNonCopperClear.py
@@ -263,7 +263,6 @@ class NonCopperClear(FlatCAMTool, Gerber):
self.default_data.update({
"name": '_ncc',
"plot": self.app.defaults["geometry_plot"],
- "tooldia": self.app.defaults["geometry_painttooldia"],
"cutz": self.app.defaults["geometry_cutz"],
"vtipdia": 0.1,
"vtipangle": 30,
@@ -283,12 +282,15 @@ class NonCopperClear(FlatCAMTool, Gerber):
"spindlespeed": self.app.defaults["geometry_spindlespeed"],
"toolchangexy": self.app.defaults["geometry_toolchangexy"],
"startz": self.app.defaults["geometry_startz"],
- "paintmargin": self.app.defaults["geometry_paintmargin"],
- "paintmethod": self.app.defaults["geometry_paintmethod"],
- "selectmethod": self.app.defaults["geometry_selectmethod"],
- "pathconnect": self.app.defaults["geometry_pathconnect"],
- "paintcontour": self.app.defaults["geometry_paintcontour"],
- "paintoverlap": self.app.defaults["geometry_paintoverlap"],
+
+ "tooldia": self.app.defaults["tools_painttooldia"],
+ "paintmargin": self.app.defaults["tools_paintmargin"],
+ "paintmethod": self.app.defaults["tools_paintmethod"],
+ "selectmethod": self.app.defaults["tools_selectmethod"],
+ "pathconnect": self.app.defaults["tools_pathconnect"],
+ "paintcontour": self.app.defaults["tools_paintcontour"],
+ "paintoverlap": self.app.defaults["tools_paintoverlap"],
+
"nccoverlap": self.app.defaults["tools_nccoverlap"],
"nccmargin": self.app.defaults["tools_nccmargin"],
"nccmethod": self.app.defaults["tools_nccmethod"],
@@ -298,7 +300,7 @@ class NonCopperClear(FlatCAMTool, Gerber):
})
try:
- dias = [float(eval(dia)) for dia in self.app.defaults["gerber_ncctools"].split(",")]
+ dias = [float(eval(dia)) for dia in self.app.defaults["tools_ncctools"].split(",")]
except:
log.error("At least one tool diameter needed. Verify in Edit -> Preferences -> TOOLS -> NCC Tools.")
return
diff --git a/flatcamTools/ToolPaint.py b/flatcamTools/ToolPaint.py
index 2a14645f..319ac576 100644
--- a/flatcamTools/ToolPaint.py
+++ b/flatcamTools/ToolPaint.py
@@ -250,7 +250,6 @@ class ToolPaint(FlatCAMTool, Gerber):
self.default_data.update({
"name": '_paint',
"plot": self.app.defaults["geometry_plot"],
- "tooldia": self.app.defaults["geometry_painttooldia"],
"cutz": self.app.defaults["geometry_cutz"],
"vtipdia": 0.1,
"vtipangle": 30,
@@ -270,12 +269,14 @@ class ToolPaint(FlatCAMTool, Gerber):
"spindlespeed": self.app.defaults["geometry_spindlespeed"],
"toolchangexy": self.app.defaults["geometry_toolchangexy"],
"startz": self.app.defaults["geometry_startz"],
- "paintmargin": self.app.defaults["geometry_paintmargin"],
- "paintmethod": self.app.defaults["geometry_paintmethod"],
- "selectmethod": self.app.defaults["geometry_selectmethod"],
- "pathconnect": self.app.defaults["geometry_pathconnect"],
- "paintcontour": self.app.defaults["geometry_paintcontour"],
- "paintoverlap": self.app.defaults["geometry_paintoverlap"]
+
+ "tooldia": self.app.defaults["tools_painttooldia"],
+ "paintmargin": self.app.defaults["tools_paintmargin"],
+ "paintmethod": self.app.defaults["tools_paintmethod"],
+ "selectmethod": self.app.defaults["tools_selectmethod"],
+ "pathconnect": self.app.defaults["tools_pathconnect"],
+ "paintcontour": self.app.defaults["tools_paintcontour"],
+ "paintoverlap": self.app.defaults["tools_paintoverlap"]
})
self.tool_type_item_options = ["C1", "C2", "C3", "C4", "B", "V"]