- in Properties Tool made threaded the calculation of convex_hull area and to work for multi-geo objects
- in NCC tool the type of tool that is used is transferred to the Geometry object - in NCC tool the type of isolation done with the tools selected as isolation tools can now be selected and it has also an Edit -> Preferences entry
This commit is contained in:
@@ -6394,6 +6394,25 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
self.ncc_tool_dia_entry = FCEntry()
|
||||
grid0.addWidget(self.ncc_tool_dia_entry, 0, 1)
|
||||
|
||||
# Milling Type Radio Button
|
||||
self.milling_type_label = QtWidgets.QLabel('%s:' % _('Milling Type'))
|
||||
self.milling_type_label.setToolTip(
|
||||
_("Milling type when the selected tool is of type: 'iso_op':\n"
|
||||
"- climb / best for precision milling and to reduce tool usage\n"
|
||||
"- conventional / useful when there is no backlash compensation")
|
||||
)
|
||||
|
||||
self.milling_type_radio = RadioSet([{'label': _('Climb'), 'value': 'cl'},
|
||||
{'label': _('Conv.'), 'value': 'cv'}])
|
||||
self.milling_type_radio.setToolTip(
|
||||
_("Milling type when the selected tool is of type: 'iso_op':\n"
|
||||
"- climb / best for precision milling and to reduce tool usage\n"
|
||||
"- conventional / useful when there is no backlash compensation")
|
||||
)
|
||||
|
||||
grid0.addWidget(self.milling_type_label, 1, 0)
|
||||
grid0.addWidget(self.milling_type_radio, 1, 1)
|
||||
|
||||
self.ncc_order_label = QtWidgets.QLabel('%s:' % _('Tool order'))
|
||||
self.ncc_order_label.setToolTip(_("This set the way that the tools in the tools table are used.\n"
|
||||
"'No' --> means that the used order is the one in the tool table\n"
|
||||
@@ -6411,8 +6430,8 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"'Reverse' --> menas that the tools will ordered from big to small\n\n"
|
||||
"WARNING: using rest machining will automatically set the order\n"
|
||||
"in reverse and disable this control."))
|
||||
grid0.addWidget(self.ncc_order_label, 1, 0)
|
||||
grid0.addWidget(self.ncc_order_radio, 1, 1)
|
||||
grid0.addWidget(self.ncc_order_label, 2, 0)
|
||||
grid0.addWidget(self.ncc_order_radio, 2, 1)
|
||||
|
||||
nccoverlabel = QtWidgets.QLabel('%s:' % _('Overlap Rate'))
|
||||
nccoverlabel.setToolTip(
|
||||
@@ -6426,17 +6445,17 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"Higher values = slow processing and slow execution on CNC\n"
|
||||
"due of too many paths.")
|
||||
)
|
||||
grid0.addWidget(nccoverlabel, 2, 0)
|
||||
grid0.addWidget(nccoverlabel, 3, 0)
|
||||
self.ncc_overlap_entry = FloatEntry()
|
||||
grid0.addWidget(self.ncc_overlap_entry, 2, 1)
|
||||
grid0.addWidget(self.ncc_overlap_entry, 3, 1)
|
||||
|
||||
nccmarginlabel = QtWidgets.QLabel('%s:' % _('Margin'))
|
||||
nccmarginlabel.setToolTip(
|
||||
_("Bounding box margin.")
|
||||
)
|
||||
grid0.addWidget(nccmarginlabel, 3, 0)
|
||||
grid0.addWidget(nccmarginlabel, 4, 0)
|
||||
self.ncc_margin_entry = FloatEntry()
|
||||
grid0.addWidget(self.ncc_margin_entry, 3, 1)
|
||||
grid0.addWidget(self.ncc_margin_entry, 4, 1)
|
||||
|
||||
# Method
|
||||
methodlabel = QtWidgets.QLabel('%s:' % _('Method'))
|
||||
@@ -6446,13 +6465,13 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"<B>Seed-based</B>: Outwards from seed.<BR>"
|
||||
"<B>Line-based</B>: Parallel lines.")
|
||||
)
|
||||
grid0.addWidget(methodlabel, 4, 0)
|
||||
grid0.addWidget(methodlabel, 5, 0)
|
||||
self.ncc_method_radio = RadioSet([
|
||||
{"label": _("Standard"), "value": "standard"},
|
||||
{"label": _("Seed-based"), "value": "seed"},
|
||||
{"label": _("Straight lines"), "value": "lines"}
|
||||
], orientation='vertical', stretch=False)
|
||||
grid0.addWidget(self.ncc_method_radio, 4, 1)
|
||||
grid0.addWidget(self.ncc_method_radio, 5, 1)
|
||||
|
||||
# Connect lines
|
||||
pathconnectlabel = QtWidgets.QLabel('%s:' % _("Connect"))
|
||||
@@ -6460,18 +6479,18 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
_("Draw lines between resulting\n"
|
||||
"segments to minimize tool lifts.")
|
||||
)
|
||||
grid0.addWidget(pathconnectlabel, 5, 0)
|
||||
grid0.addWidget(pathconnectlabel, 6, 0)
|
||||
self.ncc_connect_cb = FCCheckBox()
|
||||
grid0.addWidget(self.ncc_connect_cb, 5, 1)
|
||||
grid0.addWidget(self.ncc_connect_cb, 6, 1)
|
||||
|
||||
contourlabel = QtWidgets.QLabel('%s:' % _("Contour"))
|
||||
contourlabel.setToolTip(
|
||||
_("Cut around the perimeter of the polygon\n"
|
||||
"to trim rough edges.")
|
||||
)
|
||||
grid0.addWidget(contourlabel, 6, 0)
|
||||
grid0.addWidget(contourlabel, 7, 0)
|
||||
self.ncc_contour_cb = FCCheckBox()
|
||||
grid0.addWidget(self.ncc_contour_cb, 6, 1)
|
||||
grid0.addWidget(self.ncc_contour_cb, 7, 1)
|
||||
|
||||
restlabel = QtWidgets.QLabel('%s:' % _("Rest M."))
|
||||
restlabel.setToolTip(
|
||||
@@ -6483,9 +6502,9 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"no more copper to clear or there are no more tools.\n"
|
||||
"If not checked, use the standard algorithm.")
|
||||
)
|
||||
grid0.addWidget(restlabel, 7, 0)
|
||||
grid0.addWidget(restlabel, 8, 0)
|
||||
self.ncc_rest_cb = FCCheckBox()
|
||||
grid0.addWidget(self.ncc_rest_cb, 7, 1)
|
||||
grid0.addWidget(self.ncc_rest_cb, 8, 1)
|
||||
|
||||
# ## NCC Offset choice
|
||||
self.ncc_offset_choice_label = QtWidgets.QLabel('%s:' % _("Offset"))
|
||||
@@ -6495,9 +6514,9 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"from the copper features.\n"
|
||||
"The value can be between 0 and 10 FlatCAM units.")
|
||||
)
|
||||
grid0.addWidget(self.ncc_offset_choice_label, 8, 0)
|
||||
grid0.addWidget(self.ncc_offset_choice_label, 9, 0)
|
||||
self.ncc_choice_offset_cb = FCCheckBox()
|
||||
grid0.addWidget(self.ncc_choice_offset_cb, 8, 1)
|
||||
grid0.addWidget(self.ncc_choice_offset_cb, 9, 1)
|
||||
|
||||
# ## NCC Offset value
|
||||
self.ncc_offset_label = QtWidgets.QLabel('%s:' % _("Offset value"))
|
||||
@@ -6507,14 +6526,14 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"from the copper features.\n"
|
||||
"The value can be between 0 and 10 FlatCAM units.")
|
||||
)
|
||||
grid0.addWidget(self.ncc_offset_label, 9, 0)
|
||||
grid0.addWidget(self.ncc_offset_label, 10, 0)
|
||||
self.ncc_offset_spinner = FCDoubleSpinner()
|
||||
self.ncc_offset_spinner.set_range(0.00, 10.00)
|
||||
self.ncc_offset_spinner.set_precision(4)
|
||||
self.ncc_offset_spinner.setWrapping(True)
|
||||
self.ncc_offset_spinner.setSingleStep(0.1)
|
||||
|
||||
grid0.addWidget(self.ncc_offset_spinner, 9, 1)
|
||||
grid0.addWidget(self.ncc_offset_spinner, 10, 1)
|
||||
|
||||
# ## Reference
|
||||
self.reference_radio = RadioSet([{'label': _('Itself'), 'value': 'itself'},
|
||||
@@ -6529,8 +6548,8 @@ class ToolsNCCPrefGroupUI(OptionsGroupUI):
|
||||
"- 'Reference Object' - will do non copper clearing within the area\n"
|
||||
"specified by another object.")
|
||||
)
|
||||
grid0.addWidget(reference_label, 10, 0)
|
||||
grid0.addWidget(self.reference_radio, 10, 1)
|
||||
grid0.addWidget(reference_label, 11, 0)
|
||||
grid0.addWidget(self.reference_radio, 11, 1)
|
||||
|
||||
self.layout.addStretch()
|
||||
|
||||
|
||||
Reference in New Issue
Block a user