Merged in marius_stanciu/flatcam (pull request #24)
Bug fixed: Toolchange Z parameter was not saved in defaults / Issue #188 changed the sorting so it uses lambda function instead operator module
This commit is contained in:
@@ -221,6 +221,7 @@ class App(QtCore.QObject):
|
|||||||
"excellon_travelz": self.defaults_form.excellon_group.travelz_entry,
|
"excellon_travelz": self.defaults_form.excellon_group.travelz_entry,
|
||||||
"excellon_feedrate": self.defaults_form.excellon_group.feedrate_entry,
|
"excellon_feedrate": self.defaults_form.excellon_group.feedrate_entry,
|
||||||
"excellon_spindlespeed": self.defaults_form.excellon_group.spindlespeed_entry,
|
"excellon_spindlespeed": self.defaults_form.excellon_group.spindlespeed_entry,
|
||||||
|
"excellon_toolchangez": self.defaults_form.excellon_group.toolchangez_entry,
|
||||||
"geometry_plot": self.defaults_form.geometry_group.plot_cb,
|
"geometry_plot": self.defaults_form.geometry_group.plot_cb,
|
||||||
"geometry_cutz": self.defaults_form.geometry_group.cutz_entry,
|
"geometry_cutz": self.defaults_form.geometry_group.cutz_entry,
|
||||||
"geometry_travelz": self.defaults_form.geometry_group.travelz_entry,
|
"geometry_travelz": self.defaults_form.geometry_group.travelz_entry,
|
||||||
@@ -262,6 +263,7 @@ class App(QtCore.QObject):
|
|||||||
"excellon_travelz": 0.1,
|
"excellon_travelz": 0.1,
|
||||||
"excellon_feedrate": 3.0,
|
"excellon_feedrate": 3.0,
|
||||||
"excellon_spindlespeed": None,
|
"excellon_spindlespeed": None,
|
||||||
|
"excellon_toolchangez": 1.0,
|
||||||
"geometry_plot": True,
|
"geometry_plot": True,
|
||||||
"geometry_cutz": -0.002,
|
"geometry_cutz": -0.002,
|
||||||
"geometry_travelz": 0.1,
|
"geometry_travelz": 0.1,
|
||||||
@@ -346,6 +348,7 @@ class App(QtCore.QObject):
|
|||||||
"excellon_travelz": self.options_form.excellon_group.travelz_entry,
|
"excellon_travelz": self.options_form.excellon_group.travelz_entry,
|
||||||
"excellon_feedrate": self.options_form.excellon_group.feedrate_entry,
|
"excellon_feedrate": self.options_form.excellon_group.feedrate_entry,
|
||||||
"excellon_spindlespeed": self.options_form.excellon_group.spindlespeed_entry,
|
"excellon_spindlespeed": self.options_form.excellon_group.spindlespeed_entry,
|
||||||
|
"excellon_toolchangez": self.options_form.excellon_group.toolchangez_entry,
|
||||||
"geometry_plot": self.options_form.geometry_group.plot_cb,
|
"geometry_plot": self.options_form.geometry_group.plot_cb,
|
||||||
"geometry_cutz": self.options_form.geometry_group.cutz_entry,
|
"geometry_cutz": self.options_form.geometry_group.cutz_entry,
|
||||||
"geometry_travelz": self.options_form.geometry_group.travelz_entry,
|
"geometry_travelz": self.options_form.geometry_group.travelz_entry,
|
||||||
@@ -386,6 +389,7 @@ class App(QtCore.QObject):
|
|||||||
"excellon_travelz": 0.1,
|
"excellon_travelz": 0.1,
|
||||||
"excellon_feedrate": 3.0,
|
"excellon_feedrate": 3.0,
|
||||||
"excellon_spindlespeed": None,
|
"excellon_spindlespeed": None,
|
||||||
|
"excellon_toolchangez": 1.0,
|
||||||
"geometry_plot": True,
|
"geometry_plot": True,
|
||||||
"geometry_cutz": -0.002,
|
"geometry_cutz": -0.002,
|
||||||
"geometry_travelz": 0.1,
|
"geometry_travelz": 0.1,
|
||||||
@@ -1146,7 +1150,7 @@ class App(QtCore.QObject):
|
|||||||
# Options to scale
|
# Options to scale
|
||||||
dimensions = ['gerber_isotooldia', 'gerber_cutoutmargin', 'gerber_cutoutgapsize',
|
dimensions = ['gerber_isotooldia', 'gerber_cutoutmargin', 'gerber_cutoutgapsize',
|
||||||
'gerber_noncoppermargin', 'gerber_bboxmargin', 'excellon_drillz',
|
'gerber_noncoppermargin', 'gerber_bboxmargin', 'excellon_drillz',
|
||||||
'excellon_travelz', 'excellon_feedrate', 'cncjob_tooldia',
|
'excellon_travelz', 'excellon_feedrate', 'excellon_toolchangez', 'cncjob_tooldia',
|
||||||
'geometry_cutz', 'geometry_travelz', 'geometry_feedrate',
|
'geometry_cutz', 'geometry_travelz', 'geometry_feedrate',
|
||||||
'geometry_cnctooldia', 'geometry_painttooldia', 'geometry_paintoverlap',
|
'geometry_cnctooldia', 'geometry_painttooldia', 'geometry_paintoverlap',
|
||||||
'geometry_paintmargin']
|
'geometry_paintmargin']
|
||||||
|
|||||||
@@ -586,14 +586,22 @@ class ExcellonOptionsGroupUI(OptionsGroupUI):
|
|||||||
self.feedrate_entry = LengthEntry()
|
self.feedrate_entry = LengthEntry()
|
||||||
grid1.addWidget(self.feedrate_entry, 2, 1)
|
grid1.addWidget(self.feedrate_entry, 2, 1)
|
||||||
|
|
||||||
|
toolchangezlabel = QtGui.QLabel('Toolchange Z:')
|
||||||
|
toolchangezlabel.setToolTip(
|
||||||
|
"Tool Z where user can change drill bit\n"
|
||||||
|
)
|
||||||
|
grid1.addWidget(toolchangezlabel, 3, 0)
|
||||||
|
self.toolchangez_entry = LengthEntry()
|
||||||
|
grid1.addWidget(self.toolchangez_entry, 3, 1)
|
||||||
|
|
||||||
spdlabel = QtGui.QLabel('Spindle speed:')
|
spdlabel = QtGui.QLabel('Spindle speed:')
|
||||||
spdlabel.setToolTip(
|
spdlabel.setToolTip(
|
||||||
"Speed of the spindle\n"
|
"Speed of the spindle\n"
|
||||||
"in RPM (optional)"
|
"in RPM (optional)"
|
||||||
)
|
)
|
||||||
grid1.addWidget(spdlabel, 3, 0)
|
grid1.addWidget(spdlabel, 4, 0)
|
||||||
self.spindlespeed_entry = IntEntry(allow_empty=True)
|
self.spindlespeed_entry = IntEntry(allow_empty=True)
|
||||||
grid1.addWidget(self.spindlespeed_entry, 3, 1)
|
grid1.addWidget(self.spindlespeed_entry, 4, 1)
|
||||||
|
|
||||||
|
|
||||||
class GeometryOptionsGroupUI(OptionsGroupUI):
|
class GeometryOptionsGroupUI(OptionsGroupUI):
|
||||||
|
|||||||
14
camlib.py
14
camlib.py
@@ -55,8 +55,6 @@ from svgparse import *
|
|||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
import operator
|
|
||||||
|
|
||||||
log = logging.getLogger('base2')
|
log = logging.getLogger('base2')
|
||||||
log.setLevel(logging.DEBUG)
|
log.setLevel(logging.DEBUG)
|
||||||
# log.setLevel(logging.WARNING)
|
# log.setLevel(logging.WARNING)
|
||||||
@@ -2711,16 +2709,16 @@ class CNCjob(Geometry):
|
|||||||
|
|
||||||
# Tools
|
# Tools
|
||||||
|
|
||||||
#sort the tools list by the second item in tuple (here we have a dict with diameter of the tool)
|
# sort the tools list by the second item in tuple (here we have a dict with diameter of the tool)
|
||||||
#so we actually are sorting the tools by diameter
|
# so we actually are sorting the tools by diameter
|
||||||
sorted_tools = sorted(exobj.tools.items(), key = operator.itemgetter(1))
|
sorted_tools = sorted(exobj.tools.items(), key = lambda x: x[1])
|
||||||
if tools == "all":
|
if tools == "all":
|
||||||
tools = str([i[0] for i in sorted_tools]) #we get a string of ordered tools
|
tools = str([i[0] for i in sorted_tools]) # we get a string of ordered tools
|
||||||
log.debug("Tools 'all' and sorted are: %s" % str(tools))
|
log.debug("Tools 'all' and sorted are: %s" % str(tools))
|
||||||
else:
|
else:
|
||||||
selected_tools = [x.strip() for x in tools.split(",")] #we strip spaces and also separate the tools by ','
|
selected_tools = [x.strip() for x in tools.split(",")] # we strip spaces and also separate the tools by ','
|
||||||
selected_tools = filter(lambda i: i in selected_tools, selected_tools)
|
selected_tools = filter(lambda i: i in selected_tools, selected_tools)
|
||||||
tools = [i for i,j in sorted_tools for k in selected_tools if i == k] #create a sorted list of selected tools from the sorted_tools list
|
tools = [i for i,j in sorted_tools for k in selected_tools if i == k] # create a sorted list of selected tools from the sorted_tools list
|
||||||
log.debug("Tools selected and sorted are: %s" % str(tools))
|
log.debug("Tools selected and sorted are: %s" % str(tools))
|
||||||
|
|
||||||
# Points (Group by tool)
|
# Points (Group by tool)
|
||||||
|
|||||||
Reference in New Issue
Block a user