- added a GUI for Excellon Search time for OR-TOOLS path optimization in Edit -> Preferences -> Excellon General -> Optimization Time
- more changes in Edit -> Preferences -> Geometry, Gerber and in CNCJob - added new option for Cutout Tool Freeform Gaps in Edit -> Preferences -> Tools - fixed Freeform Cutout gaps issue (it was double than the value set)
This commit is contained in:
175
FlatCAMApp.py
175
FlatCAMApp.py
@@ -313,20 +313,20 @@ class App(QtCore.QObject):
|
||||
"global_workspace": self.general_defaults_form.general_gui_group.workspace_cb,
|
||||
"global_workspaceT": self.general_defaults_form.general_gui_group.wk_cb,
|
||||
|
||||
"gerber_plot": self.gerber_defaults_form.gerber_group.plot_cb,
|
||||
"gerber_solid": self.gerber_defaults_form.gerber_group.solid_cb,
|
||||
"gerber_multicolored": self.gerber_defaults_form.gerber_group.multicolored_cb,
|
||||
"gerber_isotooldia": self.gerber_defaults_form.gerber_group.iso_tool_dia_entry,
|
||||
"gerber_isopasses": self.gerber_defaults_form.gerber_group.iso_width_entry,
|
||||
"gerber_isooverlap": self.gerber_defaults_form.gerber_group.iso_overlap_entry,
|
||||
"gerber_plot": self.gerber_defaults_form.gerber_gen_group.plot_cb,
|
||||
"gerber_solid": self.gerber_defaults_form.gerber_gen_group.solid_cb,
|
||||
"gerber_multicolored": self.gerber_defaults_form.gerber_gen_group.multicolored_cb,
|
||||
"gerber_circle_steps": self.gerber_defaults_form.gerber_gen_group.circle_steps_entry,
|
||||
|
||||
"gerber_combine_passes": self.gerber_defaults_form.gerber_group.combine_passes_cb,
|
||||
"gerber_milling_type": self.gerber_defaults_form.gerber_group.milling_type_radio,
|
||||
"gerber_noncoppermargin": self.gerber_defaults_form.gerber_group.noncopper_margin_entry,
|
||||
"gerber_noncopperrounded": self.gerber_defaults_form.gerber_group.noncopper_rounded_cb,
|
||||
"gerber_bboxmargin": self.gerber_defaults_form.gerber_group.bbmargin_entry,
|
||||
"gerber_bboxrounded": self.gerber_defaults_form.gerber_group.bbrounded_cb,
|
||||
"gerber_circle_steps": self.gerber_defaults_form.gerber_group.circle_steps_entry,
|
||||
"gerber_isotooldia": self.gerber_defaults_form.gerber_opt_group.iso_tool_dia_entry,
|
||||
"gerber_isopasses": self.gerber_defaults_form.gerber_opt_group.iso_width_entry,
|
||||
"gerber_isooverlap": self.gerber_defaults_form.gerber_opt_group.iso_overlap_entry,
|
||||
"gerber_combine_passes": self.gerber_defaults_form.gerber_opt_group.combine_passes_cb,
|
||||
"gerber_milling_type": self.gerber_defaults_form.gerber_opt_group.milling_type_radio,
|
||||
"gerber_noncoppermargin": self.gerber_defaults_form.gerber_opt_group.noncopper_margin_entry,
|
||||
"gerber_noncopperrounded": self.gerber_defaults_form.gerber_opt_group.noncopper_rounded_cb,
|
||||
"gerber_bboxmargin": self.gerber_defaults_form.gerber_opt_group.bbmargin_entry,
|
||||
"gerber_bboxrounded": self.gerber_defaults_form.gerber_opt_group.bbrounded_cb,
|
||||
|
||||
"excellon_plot": self.excellon_defaults_form.excellon_gen_group.plot_cb,
|
||||
"excellon_solid": self.excellon_defaults_form.excellon_gen_group.solid_cb,
|
||||
@@ -337,6 +337,7 @@ class App(QtCore.QObject):
|
||||
"excellon_zeros": self.excellon_defaults_form.excellon_gen_group.excellon_zeros_radio,
|
||||
"excellon_units": self.excellon_defaults_form.excellon_gen_group.excellon_units_radio,
|
||||
"excellon_optimization_type": self.excellon_defaults_form.excellon_gen_group.excellon_optimization_radio,
|
||||
"excellon_search_time": self.excellon_defaults_form.excellon_gen_group.optimization_time_entry,
|
||||
|
||||
"excellon_drillz": self.excellon_defaults_form.excellon_opt_group.cutz_entry,
|
||||
"excellon_travelz": self.excellon_defaults_form.excellon_opt_group.travelz_entry,
|
||||
@@ -355,36 +356,38 @@ class App(QtCore.QObject):
|
||||
"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,
|
||||
"geometry_cutz": self.geometry_defaults_form.geometry_group.cutz_entry,
|
||||
"geometry_travelz": self.geometry_defaults_form.geometry_group.travelz_entry,
|
||||
"geometry_feedrate": self.geometry_defaults_form.geometry_group.cncfeedrate_entry,
|
||||
"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_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_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,
|
||||
"geometry_toolchangexy": self.geometry_defaults_form.geometry_group.toolchangexy_entry,
|
||||
"geometry_startz": self.geometry_defaults_form.geometry_group.gstartz_entry,
|
||||
"geometry_endz": self.geometry_defaults_form.geometry_group.gendz_entry,
|
||||
"geometry_multidepth": self.geometry_defaults_form.geometry_group.multidepth_cb,
|
||||
"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,
|
||||
"geometry_plot": self.geometry_defaults_form.geometry_gen_group.plot_cb,
|
||||
"geometry_cnctooldia": self.geometry_defaults_form.geometry_gen_group.cnctooldia_entry,
|
||||
"geometry_circle_steps": self.geometry_defaults_form.geometry_gen_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,
|
||||
"cncjob_fr_decimals": self.cncjob_defaults_form.cncjob_group.fr_dec_entry,
|
||||
"cncjob_prepend": self.cncjob_defaults_form.cncjob_group.prepend_text,
|
||||
"cncjob_append": self.cncjob_defaults_form.cncjob_group.append_text,
|
||||
"cncjob_steps_per_circle": self.cncjob_defaults_form.cncjob_group.steps_per_circle_entry,
|
||||
"geometry_segx": self.geometry_defaults_form.geometry_opt_group.segx_entry,
|
||||
"geometry_segy": self.geometry_defaults_form.geometry_opt_group.segy_entry,
|
||||
"geometry_cutz": self.geometry_defaults_form.geometry_opt_group.cutz_entry,
|
||||
"geometry_travelz": self.geometry_defaults_form.geometry_opt_group.travelz_entry,
|
||||
"geometry_feedrate": self.geometry_defaults_form.geometry_opt_group.cncfeedrate_entry,
|
||||
"geometry_feedrate_z": self.geometry_defaults_form.geometry_opt_group.cncplunge_entry,
|
||||
"geometry_feedrate_rapid": self.geometry_defaults_form.geometry_opt_group.cncfeedrate_rapid_entry,
|
||||
"geometry_spindlespeed": self.geometry_defaults_form.geometry_opt_group.cncspindlespeed_entry,
|
||||
"geometry_dwell": self.geometry_defaults_form.geometry_opt_group.dwell_cb,
|
||||
"geometry_dwelltime": self.geometry_defaults_form.geometry_opt_group.dwelltime_entry,
|
||||
"geometry_ppname_g": self.geometry_defaults_form.geometry_opt_group.pp_geometry_name_cb,
|
||||
"geometry_toolchange": self.geometry_defaults_form.geometry_opt_group.toolchange_cb,
|
||||
"geometry_toolchangez": self.geometry_defaults_form.geometry_opt_group.toolchangez_entry,
|
||||
"geometry_toolchangexy": self.geometry_defaults_form.geometry_opt_group.toolchangexy_entry,
|
||||
"geometry_startz": self.geometry_defaults_form.geometry_opt_group.gstartz_entry,
|
||||
"geometry_endz": self.geometry_defaults_form.geometry_opt_group.gendz_entry,
|
||||
"geometry_multidepth": self.geometry_defaults_form.geometry_opt_group.multidepth_cb,
|
||||
"geometry_depthperpass": self.geometry_defaults_form.geometry_opt_group.depthperpass_entry,
|
||||
"geometry_extracut": self.geometry_defaults_form.geometry_opt_group.extracut_cb,
|
||||
|
||||
"cncjob_plot": self.cncjob_defaults_form.cncjob_gen_group.plot_cb,
|
||||
"cncjob_tooldia": self.cncjob_defaults_form.cncjob_gen_group.tooldia_entry,
|
||||
"cncjob_coords_decimals": self.cncjob_defaults_form.cncjob_gen_group.coords_dec_entry,
|
||||
"cncjob_fr_decimals": self.cncjob_defaults_form.cncjob_gen_group.fr_dec_entry,
|
||||
"cncjob_steps_per_circle": self.cncjob_defaults_form.cncjob_gen_group.steps_per_circle_entry,
|
||||
|
||||
"cncjob_prepend": self.cncjob_defaults_form.cncjob_opt_group.prepend_text,
|
||||
"cncjob_append": self.cncjob_defaults_form.cncjob_opt_group.append_text,
|
||||
|
||||
"tools_ncctools": self.tools_defaults_form.tools_ncc_group.ncc_tool_dia_entry,
|
||||
"tools_nccoverlap": self.tools_defaults_form.tools_ncc_group.ncc_overlap_entry,
|
||||
@@ -398,6 +401,7 @@ class App(QtCore.QObject):
|
||||
"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_ff": self.tools_defaults_form.tools_cutout_group.gaps_combo,
|
||||
|
||||
"tools_painttooldia": self.tools_defaults_form.tools_paint_group.painttooldia_entry,
|
||||
"tools_paintoverlap": self.tools_defaults_form.tools_paint_group.paintoverlap_entry,
|
||||
@@ -411,7 +415,7 @@ class App(QtCore.QObject):
|
||||
self.postprocessors = load_postprocessors(self)
|
||||
|
||||
for name in list(self.postprocessors.keys()):
|
||||
self.geometry_defaults_form.geometry_group.pp_geometry_name_cb.addItem(name)
|
||||
self.geometry_defaults_form.geometry_opt_group.pp_geometry_name_cb.addItem(name)
|
||||
# HPGL postprocessor is only for Geometry objects therefore it should not be in the Excellon Preferences
|
||||
if name == 'hpgl':
|
||||
continue
|
||||
@@ -558,6 +562,7 @@ class App(QtCore.QObject):
|
||||
"tools_cutoutmargin": 0.1,
|
||||
"tools_cutoutgapsize": 0.15,
|
||||
"tools_gaps_rect": "4",
|
||||
"tools_gaps_ff": "8",
|
||||
|
||||
"tools_painttooldia": 0.07,
|
||||
"tools_paintoverlap": 0.15,
|
||||
@@ -605,17 +610,19 @@ class App(QtCore.QObject):
|
||||
"units": self.general_options_form.general_app_group.units_radio,
|
||||
"global_gridx": self.general_options_form.general_gui_group.gridx_entry,
|
||||
"global_gridy": self.general_options_form.general_gui_group.gridy_entry,
|
||||
"gerber_plot": self.gerber_options_form.gerber_group.plot_cb,
|
||||
"gerber_solid": self.gerber_options_form.gerber_group.solid_cb,
|
||||
"gerber_multicolored": self.gerber_options_form.gerber_group.multicolored_cb,
|
||||
"gerber_isotooldia": self.gerber_options_form.gerber_group.iso_tool_dia_entry,
|
||||
"gerber_isopasses": self.gerber_options_form.gerber_group.iso_width_entry,
|
||||
"gerber_isooverlap": self.gerber_options_form.gerber_group.iso_overlap_entry,
|
||||
"gerber_combine_passes": self.gerber_options_form.gerber_group.combine_passes_cb,
|
||||
"gerber_noncoppermargin": self.gerber_options_form.gerber_group.noncopper_margin_entry,
|
||||
"gerber_noncopperrounded": self.gerber_options_form.gerber_group.noncopper_rounded_cb,
|
||||
"gerber_bboxmargin": self.gerber_options_form.gerber_group.bbmargin_entry,
|
||||
"gerber_bboxrounded": self.gerber_options_form.gerber_group.bbrounded_cb,
|
||||
|
||||
"gerber_plot": self.gerber_options_form.gerber_gen_group.plot_cb,
|
||||
"gerber_solid": self.gerber_options_form.gerber_gen_group.solid_cb,
|
||||
"gerber_multicolored": self.gerber_options_form.gerber_gen_group.multicolored_cb,
|
||||
|
||||
"gerber_isotooldia": self.gerber_options_form.gerber_opt_group.iso_tool_dia_entry,
|
||||
"gerber_isopasses": self.gerber_options_form.gerber_opt_group.iso_width_entry,
|
||||
"gerber_isooverlap": self.gerber_options_form.gerber_opt_group.iso_overlap_entry,
|
||||
"gerber_combine_passes": self.gerber_options_form.gerber_opt_group.combine_passes_cb,
|
||||
"gerber_noncoppermargin": self.gerber_options_form.gerber_opt_group.noncopper_margin_entry,
|
||||
"gerber_noncopperrounded": self.gerber_options_form.gerber_opt_group.noncopper_rounded_cb,
|
||||
"gerber_bboxmargin": self.gerber_options_form.gerber_opt_group.bbmargin_entry,
|
||||
"gerber_bboxrounded": self.gerber_options_form.gerber_opt_group.bbrounded_cb,
|
||||
|
||||
"excellon_plot": self.excellon_options_form.excellon_gen_group.plot_cb,
|
||||
"excellon_solid": self.excellon_options_form.excellon_gen_group.solid_cb,
|
||||
@@ -642,32 +649,34 @@ class App(QtCore.QObject):
|
||||
"excellon_startz": self.excellon_options_form.excellon_opt_group.estartz_entry,
|
||||
"excellon_endz": self.excellon_options_form.excellon_opt_group.eendz_entry,
|
||||
|
||||
"geometry_plot": self.geometry_options_form.geometry_group.plot_cb,
|
||||
"geometry_segx": self.geometry_options_form.geometry_group.segx_entry,
|
||||
"geometry_segy": self.geometry_options_form.geometry_group.segy_entry,
|
||||
"geometry_cutz": self.geometry_options_form.geometry_group.cutz_entry,
|
||||
"geometry_travelz": self.geometry_options_form.geometry_group.travelz_entry,
|
||||
"geometry_feedrate": self.geometry_options_form.geometry_group.cncfeedrate_entry,
|
||||
"geometry_feedrate_z": self.geometry_options_form.geometry_group.cncplunge_entry,
|
||||
"geometry_feedrate_rapid": self.geometry_options_form.geometry_group.cncfeedrate_rapid_entry,
|
||||
"geometry_spindlespeed": self.geometry_options_form.geometry_group.cncspindlespeed_entry,
|
||||
"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_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,
|
||||
"geometry_toolchangexy": self.geometry_options_form.geometry_group.toolchangexy_entry,
|
||||
"geometry_startz": self.geometry_options_form.geometry_group.gstartz_entry,
|
||||
"geometry_endz": self.geometry_options_form.geometry_group.gendz_entry,
|
||||
"geometry_depthperpass": self.geometry_options_form.geometry_group.depthperpass_entry,
|
||||
"geometry_multidepth": self.geometry_options_form.geometry_group.multidepth_cb,
|
||||
"geometry_extracut": self.geometry_options_form.geometry_group.extracut_cb,
|
||||
"geometry_plot": self.geometry_options_form.geometry_gen_group.plot_cb,
|
||||
"geometry_cnctooldia": self.geometry_options_form.geometry_gen_group.cnctooldia_entry,
|
||||
|
||||
"cncjob_plot": self.cncjob_options_form.cncjob_group.plot_cb,
|
||||
"cncjob_tooldia": self.cncjob_options_form.cncjob_group.tooldia_entry,
|
||||
"cncjob_prepend": self.cncjob_options_form.cncjob_group.prepend_text,
|
||||
"cncjob_append": self.cncjob_options_form.cncjob_group.append_text,
|
||||
"geometry_segx": self.geometry_options_form.geometry_opt_group.segx_entry,
|
||||
"geometry_segy": self.geometry_options_form.geometry_opt_group.segy_entry,
|
||||
"geometry_cutz": self.geometry_options_form.geometry_opt_group.cutz_entry,
|
||||
"geometry_travelz": self.geometry_options_form.geometry_opt_group.travelz_entry,
|
||||
"geometry_feedrate": self.geometry_options_form.geometry_opt_group.cncfeedrate_entry,
|
||||
"geometry_feedrate_z": self.geometry_options_form.geometry_opt_group.cncplunge_entry,
|
||||
"geometry_feedrate_rapid": self.geometry_options_form.geometry_opt_group.cncfeedrate_rapid_entry,
|
||||
"geometry_spindlespeed": self.geometry_options_form.geometry_opt_group.cncspindlespeed_entry,
|
||||
"geometry_dwell": self.geometry_options_form.geometry_opt_group.dwell_cb,
|
||||
"geometry_dwelltime": self.geometry_options_form.geometry_opt_group.dwelltime_entry,
|
||||
"geometry_ppname_g": self.geometry_options_form.geometry_opt_group.pp_geometry_name_cb,
|
||||
"geometry_toolchange": self.geometry_options_form.geometry_opt_group.toolchange_cb,
|
||||
"geometry_toolchangez": self.geometry_options_form.geometry_opt_group.toolchangez_entry,
|
||||
"geometry_toolchangexy": self.geometry_options_form.geometry_opt_group.toolchangexy_entry,
|
||||
"geometry_startz": self.geometry_options_form.geometry_opt_group.gstartz_entry,
|
||||
"geometry_endz": self.geometry_options_form.geometry_opt_group.gendz_entry,
|
||||
"geometry_depthperpass": self.geometry_options_form.geometry_opt_group.depthperpass_entry,
|
||||
"geometry_multidepth": self.geometry_options_form.geometry_opt_group.multidepth_cb,
|
||||
"geometry_extracut": self.geometry_options_form.geometry_opt_group.extracut_cb,
|
||||
|
||||
"cncjob_plot": self.cncjob_options_form.cncjob_gen_group.plot_cb,
|
||||
"cncjob_tooldia": self.cncjob_options_form.cncjob_gen_group.tooldia_entry,
|
||||
|
||||
"cncjob_prepend": self.cncjob_options_form.cncjob_opt_group.prepend_text,
|
||||
"cncjob_append": self.cncjob_options_form.cncjob_opt_group.append_text,
|
||||
|
||||
"tools_ncctools": self.tools_options_form.tools_ncc_group.ncc_tool_dia_entry,
|
||||
"tools_nccoverlap": self.tools_options_form.tools_ncc_group.ncc_overlap_entry,
|
||||
@@ -676,7 +685,8 @@ class App(QtCore.QObject):
|
||||
"tools_cutouttooldia": self.tools_options_form.tools_cutout_group.cutout_tooldia_entry,
|
||||
"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_gaps_rect": self.tools_options_form.tools_cutout_group.gaps_radio,
|
||||
"tools_gaps_rect": self.tools_options_form.tools_cutout_group.gaps_combo,
|
||||
|
||||
"tools_painttooldia": self.tools_options_form.tools_paint_group.painttooldia_entry,
|
||||
"tools_paintoverlap": self.tools_options_form.tools_paint_group.paintoverlap_entry,
|
||||
@@ -688,7 +698,7 @@ class App(QtCore.QObject):
|
||||
}
|
||||
|
||||
for name in list(self.postprocessors.keys()):
|
||||
self.geometry_options_form.geometry_group.pp_geometry_name_cb.addItem(name)
|
||||
self.geometry_options_form.geometry_opt_group.pp_geometry_name_cb.addItem(name)
|
||||
self.excellon_options_form.excellon_opt_group.pp_excellon_name_cb.addItem(name)
|
||||
|
||||
self.options = LoudDict()
|
||||
@@ -773,7 +783,8 @@ class App(QtCore.QObject):
|
||||
"tools_cutouttooldia": 0.07,
|
||||
"tools_cutoutmargin": 0.1,
|
||||
"tools_cutoutgapsize": 0.15,
|
||||
"tools_gaps": "4",
|
||||
"tools_gaps_rect": "4",
|
||||
"tools_gaps_ff": "8",
|
||||
|
||||
"tools_painttooldia": 0.07,
|
||||
"tools_paintoverlap": 0.15,
|
||||
|
||||
Reference in New Issue
Block a user