- fixed cncjob TclCommand - it used the default values for parameters
- fixed the layout in ToolTransform - fixed the initial text in the ToolShell
This commit is contained in:
parent
6da418c4c8
commit
3ea1f4e62c
|
@ -87,8 +87,8 @@ class App(QtCore.QObject):
|
|||
log.addHandler(handler)
|
||||
|
||||
# Version
|
||||
version = 'Beta1'
|
||||
version_date = "2019/01/03"
|
||||
version = '8.6 Beta1'
|
||||
version_date = "2019/01/06"
|
||||
|
||||
# URL for update checks and statistics
|
||||
version_url = "http://flatcam.org/version"
|
||||
|
@ -1091,13 +1091,13 @@ class App(QtCore.QObject):
|
|||
|
||||
self.myKeywords = self.tcl_commands_list + self.ordinary_keywords
|
||||
|
||||
self.shell = FCShell(self)
|
||||
self.shell = FCShell(self, version=self.version)
|
||||
self.shell._edit.set_model_data(self.myKeywords)
|
||||
self.shell.setWindowIcon(self.ui.app_icon)
|
||||
self.shell.setWindowTitle("FlatCAM Shell")
|
||||
self.shell.resize(*self.defaults["global_shell_shape"])
|
||||
self.shell.append_output("FlatCAM %s\n(c) 2014-2019 Juan Pablo Caram\n\n" % self.version)
|
||||
self.shell.append_output("Type help to get started.\n\n")
|
||||
self.shell.append_output("FlatCAM %s (c)2014-2019 Juan Pablo Caram " % self.version)
|
||||
self.shell.append_output("(Type help to get started)\n\n")
|
||||
|
||||
self.init_tcl()
|
||||
|
||||
|
|
|
@ -3221,8 +3221,6 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||
|
||||
ppname_g = ppname_g if ppname_g else self.options["ppname_g"]
|
||||
|
||||
print(self.tools)
|
||||
|
||||
# Object initialization function for app.new_object()
|
||||
# RUNNING ON SEPARATE THREAD!
|
||||
def job_init(job_obj, app_obj):
|
||||
|
@ -3232,15 +3230,7 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||
job_obj.options["tooldia"] = tooldia
|
||||
|
||||
app_obj.progress.emit(20)
|
||||
job_obj.z_cut = z_cut
|
||||
job_obj.z_move = z_move
|
||||
job_obj.feedrate = feedrate
|
||||
job_obj.feedrate_z = feedrate_z
|
||||
job_obj.feedrate_rapid = feedrate_rapid
|
||||
job_obj.pp_geometry_name = ppname_g
|
||||
job_obj.spindlespeed = spindlespeed
|
||||
job_obj.dwell = dwell
|
||||
job_obj.dwelltime = dwelltime
|
||||
|
||||
job_obj.coords_decimals = self.app.defaults["cncjob_coords_decimals"]
|
||||
job_obj.fr_decimals = self.app.defaults["cncjob_fr_decimals"]
|
||||
app_obj.progress.emit(40)
|
||||
|
@ -3248,16 +3238,16 @@ class FlatCAMGeometry(FlatCAMObj, Geometry):
|
|||
job_obj.options['type'] = 'Geometry'
|
||||
job_obj.options['tool_dia'] = tooldia
|
||||
|
||||
job_obj.toolchange = self.options["toolchange"]
|
||||
job_obj.toolchangez = self.options["toolchangez"]
|
||||
job_obj.toolchangexy = self.options["toolchangexy"]
|
||||
|
||||
# TODO: The tolerance should not be hard coded. Just for testing.
|
||||
job_obj.generate_from_geometry_2(self, tooldia=tooldia, offset=offset,
|
||||
job_obj.generate_from_geometry_2(self, tooldia=tooldia, offset=offset, tolerance=0.0005,
|
||||
z_cut=z_cut, z_move=z_move,
|
||||
feedrate=feedrate, feedrate_z=feedrate_z, feedrate_rapid=feedrate_rapid,
|
||||
spindlespeed=spindlespeed, dwell=dwell, dwelltime=dwelltime,
|
||||
multidepth=multidepth, depthpercut=depthperpass,
|
||||
tolerance=0.0005,
|
||||
extracut=extracut, endz=endz, startz=startz,
|
||||
toolchange=toolchange, toolchangez=toolchangez, toolchangexy=toolchangexy)
|
||||
toolchange=toolchange, toolchangez=toolchangez, toolchangexy=toolchangexy,
|
||||
extracut=extracut, startz=startz, endz=endz,
|
||||
pp_geometry_name=ppname_g
|
||||
)
|
||||
|
||||
app_obj.progress.emit(50)
|
||||
# tell gcode_parse from which point to start drawing the lines depending on what kind of object is the
|
||||
|
|
|
@ -9,6 +9,12 @@ CAD program, and create G-Code for Isolation routing.
|
|||
|
||||
=================================================
|
||||
|
||||
5.01.2019
|
||||
|
||||
- fixed cncjob TclCommand - it used the default values for parameters
|
||||
- fixed the layout in ToolTransform
|
||||
- fixed the initial text in the ToolShell
|
||||
|
||||
3.01.2019
|
||||
|
||||
- initial merge into FlatCAM regular
|
||||
|
|
23
camlib.py
23
camlib.py
|
@ -4754,16 +4754,14 @@ class CNCjob(Geometry):
|
|||
self.gcode = gcode
|
||||
|
||||
def generate_from_multitool_geometry(self, geometry, append=True,
|
||||
tooldia=None, offset=0.0, tolerance=0,
|
||||
z_cut=1.0, z_move=2.0,
|
||||
feedrate=2.0, feedrate_z=2.0, feedrate_rapid=30,
|
||||
spindlespeed=None, dwell=False, dwelltime=1.0,
|
||||
multidepth=False, depthpercut=None,
|
||||
toolchange=False, toolchangez=1.0, toolchangexy="0.0, 0.0",
|
||||
extracut=False, startz=None, endz=2.0,
|
||||
pp_geometry_name=None, tool_no=1):
|
||||
tooldia=None, offset=0.0, tolerance=0, z_cut=1.0, z_move=2.0,
|
||||
feedrate=2.0, feedrate_z=2.0, feedrate_rapid=30,
|
||||
spindlespeed=None, dwell=False, dwelltime=1.0,
|
||||
multidepth=False, depthpercut=None,
|
||||
toolchange=False, toolchangez=1.0, toolchangexy="0.0, 0.0", extracut=False,
|
||||
startz=None, endz=2.0, pp_geometry_name=None, tool_no=1):
|
||||
"""
|
||||
Second algorithm to generate from Geometry.
|
||||
Algorithm to generate from multitool Geometry.
|
||||
|
||||
Algorithm description:
|
||||
----------------------
|
||||
|
@ -4781,7 +4779,7 @@ class CNCjob(Geometry):
|
|||
:return: None
|
||||
"""
|
||||
|
||||
log.debug("Generate_from_geometry_2()")
|
||||
log.debug("Generate_from_multitool_geometry()")
|
||||
|
||||
temp_solid_geometry = []
|
||||
if offset != 0.0:
|
||||
|
@ -4948,7 +4946,10 @@ class CNCjob(Geometry):
|
|||
overlapping the first point in path to ensure complete copper removal
|
||||
:return: None
|
||||
"""
|
||||
assert isinstance(geometry, Geometry), "Expected a Geometry, got %s" % type(geometry)
|
||||
|
||||
if not isinstance(geometry, Geometry):
|
||||
self.app.inform.emit("[error]Expected a Geometry, got %s" % type(geometry))
|
||||
return 'fail'
|
||||
log.debug("Generate_from_geometry_2()")
|
||||
|
||||
# if solid_geometry is empty raise an exception
|
||||
|
|
|
@ -14,9 +14,10 @@ from PyQt5.QtWidgets import QLineEdit, QSizePolicy, QTextEdit, QVBoxLayout, QWid
|
|||
|
||||
class _BrowserTextEdit(QTextEdit):
|
||||
|
||||
def __init__(self):
|
||||
def __init__(self, version):
|
||||
QTextEdit.__init__(self)
|
||||
self.menu = None
|
||||
self.version = version
|
||||
|
||||
def contextMenuEvent(self, event):
|
||||
self.menu = self.createStandardContextMenu(event.pos())
|
||||
|
@ -29,7 +30,7 @@ class _BrowserTextEdit(QTextEdit):
|
|||
|
||||
def clear(self):
|
||||
QTextEdit.clear(self)
|
||||
text = "FlatCAM 3000\n(c) 2014-2019 Juan Pablo Caram\n\nType help to get started.\n\n"
|
||||
text = "FlatCAM %s (c)2014-2019 Juan Pablo Caram (Type help to get started)\n\n" % self.version
|
||||
text = html.escape(text)
|
||||
text = text.replace('\n', '<br/>')
|
||||
self.moveCursor(QTextCursor.End)
|
||||
|
@ -174,10 +175,10 @@ class TermWidget(QWidget):
|
|||
User pressed Enter. Client class should decide, if command must be executed or user may continue edit it
|
||||
"""
|
||||
|
||||
def __init__(self, *args):
|
||||
def __init__(self, version, *args):
|
||||
QWidget.__init__(self, *args)
|
||||
|
||||
self._browser = _BrowserTextEdit()
|
||||
self._browser = _BrowserTextEdit(version=version)
|
||||
self._browser.setStyleSheet("font: 9pt \"Courier\";")
|
||||
self._browser.setReadOnly(True)
|
||||
self._browser.document().setDefaultStyleSheet(
|
||||
|
@ -338,8 +339,8 @@ class TermWidget(QWidget):
|
|||
self._edit.moveCursor(QTextCursor.End)
|
||||
|
||||
class FCShell(TermWidget):
|
||||
def __init__(self, sysShell, *args):
|
||||
TermWidget.__init__(self, *args)
|
||||
def __init__(self, sysShell, version, *args):
|
||||
TermWidget.__init__(self, version, *args)
|
||||
self._sysShell = sysShell
|
||||
|
||||
def is_command_complete(self, text):
|
||||
|
|
|
@ -43,7 +43,7 @@ class ToolTransform(FlatCAMTool):
|
|||
## Layout
|
||||
form_layout = QtWidgets.QFormLayout()
|
||||
self.transform_lay.addLayout(form_layout)
|
||||
form_child = QtWidgets.QFormLayout()
|
||||
form_child = QtWidgets.QHBoxLayout()
|
||||
|
||||
self.rotate_label = QtWidgets.QLabel("Angle:")
|
||||
self.rotate_label.setToolTip(
|
||||
|
@ -55,7 +55,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.rotate_label.setFixedWidth(50)
|
||||
|
||||
self.rotate_entry = FCEntry()
|
||||
self.rotate_entry.setFixedWidth(60)
|
||||
# self.rotate_entry.setFixedWidth(60)
|
||||
self.rotate_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
|
||||
self.rotate_button = FCButton()
|
||||
|
@ -67,7 +67,9 @@ class ToolTransform(FlatCAMTool):
|
|||
)
|
||||
self.rotate_button.setFixedWidth(60)
|
||||
|
||||
form_child.addRow(self.rotate_entry, self.rotate_button)
|
||||
form_child.addWidget(self.rotate_entry)
|
||||
form_child.addWidget(self.rotate_button)
|
||||
|
||||
form_layout.addRow(self.rotate_label, form_child)
|
||||
|
||||
self.transform_lay.addWidget(self.empty_label1)
|
||||
|
@ -79,8 +81,8 @@ class ToolTransform(FlatCAMTool):
|
|||
## Form Layout
|
||||
form1_layout = QtWidgets.QFormLayout()
|
||||
self.transform_lay.addLayout(form1_layout)
|
||||
form1_child_1 = QtWidgets.QFormLayout()
|
||||
form1_child_2 = QtWidgets.QFormLayout()
|
||||
form1_child_1 = QtWidgets.QHBoxLayout()
|
||||
form1_child_2 = QtWidgets.QHBoxLayout()
|
||||
|
||||
self.skewx_label = QtWidgets.QLabel("Angle X:")
|
||||
self.skewx_label.setToolTip(
|
||||
|
@ -90,7 +92,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.skewx_label.setFixedWidth(50)
|
||||
self.skewx_entry = FCEntry()
|
||||
self.skewx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.skewx_entry.setFixedWidth(60)
|
||||
# self.skewx_entry.setFixedWidth(60)
|
||||
|
||||
self.skewx_button = FCButton()
|
||||
self.skewx_button.set_value("Skew X")
|
||||
|
@ -108,7 +110,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.skewy_label.setFixedWidth(50)
|
||||
self.skewy_entry = FCEntry()
|
||||
self.skewy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.skewy_entry.setFixedWidth(60)
|
||||
# self.skewy_entry.setFixedWidth(60)
|
||||
|
||||
self.skewy_button = FCButton()
|
||||
self.skewy_button.set_value("Skew Y")
|
||||
|
@ -118,8 +120,12 @@ class ToolTransform(FlatCAMTool):
|
|||
"the bounding box for all selected objects.")
|
||||
self.skewy_button.setFixedWidth(60)
|
||||
|
||||
form1_child_1.addRow(self.skewx_entry, self.skewx_button)
|
||||
form1_child_2.addRow(self.skewy_entry, self.skewy_button)
|
||||
form1_child_1.addWidget(self.skewx_entry)
|
||||
form1_child_1.addWidget(self.skewx_button)
|
||||
|
||||
form1_child_2.addWidget(self.skewy_entry)
|
||||
form1_child_2.addWidget(self.skewy_button)
|
||||
|
||||
form1_layout.addRow(self.skewx_label, form1_child_1)
|
||||
form1_layout.addRow(self.skewy_label, form1_child_2)
|
||||
|
||||
|
@ -132,8 +138,8 @@ class ToolTransform(FlatCAMTool):
|
|||
## Form Layout
|
||||
form2_layout = QtWidgets.QFormLayout()
|
||||
self.transform_lay.addLayout(form2_layout)
|
||||
form2_child_1 = QtWidgets.QFormLayout()
|
||||
form2_child_2 = QtWidgets.QFormLayout()
|
||||
form2_child_1 = QtWidgets.QHBoxLayout()
|
||||
form2_child_2 = QtWidgets.QHBoxLayout()
|
||||
|
||||
self.scalex_label = QtWidgets.QLabel("Factor X:")
|
||||
self.scalex_label.setToolTip(
|
||||
|
@ -142,7 +148,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.scalex_label.setFixedWidth(50)
|
||||
self.scalex_entry = FCEntry()
|
||||
self.scalex_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.scalex_entry.setFixedWidth(60)
|
||||
# self.scalex_entry.setFixedWidth(60)
|
||||
|
||||
self.scalex_button = FCButton()
|
||||
self.scalex_button.set_value("Scale X")
|
||||
|
@ -159,7 +165,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.scaley_label.setFixedWidth(50)
|
||||
self.scaley_entry = FCEntry()
|
||||
self.scaley_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.scaley_entry.setFixedWidth(60)
|
||||
# self.scaley_entry.setFixedWidth(60)
|
||||
|
||||
self.scaley_button = FCButton()
|
||||
self.scaley_button.set_value("Scale Y")
|
||||
|
@ -186,8 +192,12 @@ class ToolTransform(FlatCAMTool):
|
|||
"and the center of the biggest bounding box\n"
|
||||
"of the selected objects when unchecked.")
|
||||
|
||||
form2_child_1.addRow(self.scalex_entry, self.scalex_button)
|
||||
form2_child_2.addRow(self.scaley_entry, self.scaley_button)
|
||||
form2_child_1.addWidget(self.scalex_entry)
|
||||
form2_child_1.addWidget(self.scalex_button)
|
||||
|
||||
form2_child_2.addWidget(self.scaley_entry)
|
||||
form2_child_2.addWidget(self.scaley_button)
|
||||
|
||||
form2_layout.addRow(self.scalex_label, form2_child_1)
|
||||
form2_layout.addRow(self.scaley_label, form2_child_2)
|
||||
form2_layout.addRow(self.scale_link_cb, self.scale_zero_ref_cb)
|
||||
|
@ -202,8 +212,8 @@ class ToolTransform(FlatCAMTool):
|
|||
## Form Layout
|
||||
form3_layout = QtWidgets.QFormLayout()
|
||||
self.transform_lay.addLayout(form3_layout)
|
||||
form3_child_1 = QtWidgets.QFormLayout()
|
||||
form3_child_2 = QtWidgets.QFormLayout()
|
||||
form3_child_1 = QtWidgets.QHBoxLayout()
|
||||
form3_child_2 = QtWidgets.QHBoxLayout()
|
||||
|
||||
self.offx_label = QtWidgets.QLabel("Value X:")
|
||||
self.offx_label.setToolTip(
|
||||
|
@ -212,7 +222,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.offx_label.setFixedWidth(50)
|
||||
self.offx_entry = FCEntry()
|
||||
self.offx_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.offx_entry.setFixedWidth(60)
|
||||
# self.offx_entry.setFixedWidth(60)
|
||||
|
||||
self.offx_button = FCButton()
|
||||
self.offx_button.set_value("Offset X")
|
||||
|
@ -229,7 +239,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.offy_label.setFixedWidth(50)
|
||||
self.offy_entry = FCEntry()
|
||||
self.offy_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.offy_entry.setFixedWidth(60)
|
||||
# self.offy_entry.setFixedWidth(60)
|
||||
|
||||
self.offy_button = FCButton()
|
||||
self.offy_button.set_value("Offset Y")
|
||||
|
@ -239,8 +249,12 @@ class ToolTransform(FlatCAMTool):
|
|||
"the bounding box for all selected objects.\n")
|
||||
self.offy_button.setFixedWidth(60)
|
||||
|
||||
form3_child_1.addRow(self.offx_entry, self.offx_button)
|
||||
form3_child_2.addRow(self.offy_entry, self.offy_button)
|
||||
form3_child_1.addWidget(self.offx_entry)
|
||||
form3_child_1.addWidget(self.offx_button)
|
||||
|
||||
form3_child_2.addWidget(self.offy_entry)
|
||||
form3_child_2.addWidget(self.offy_button)
|
||||
|
||||
form3_layout.addRow(self.offx_label, form3_child_1)
|
||||
form3_layout.addRow(self.offy_label, form3_child_2)
|
||||
|
||||
|
@ -252,9 +266,10 @@ class ToolTransform(FlatCAMTool):
|
|||
|
||||
## Form Layout
|
||||
form4_layout = QtWidgets.QFormLayout()
|
||||
form4_child_hlay = QtWidgets.QHBoxLayout()
|
||||
self.transform_lay.addLayout(form4_child_hlay)
|
||||
self.transform_lay.addLayout(form4_layout)
|
||||
form4_child = QtWidgets.QFormLayout()
|
||||
form4_child_1 = QtWidgets.QFormLayout()
|
||||
form4_child_1 = QtWidgets.QHBoxLayout()
|
||||
|
||||
self.flipx_button = FCButton()
|
||||
self.flipx_button.set_value("Flip on X")
|
||||
|
@ -296,7 +311,7 @@ class ToolTransform(FlatCAMTool):
|
|||
self.flip_ref_label.setFixedWidth(50)
|
||||
self.flip_ref_entry = EvalEntry2("(0, 0)")
|
||||
self.flip_ref_entry.setAlignment(QtCore.Qt.AlignRight | QtCore.Qt.AlignVCenter)
|
||||
self.flip_ref_entry.setFixedWidth(60)
|
||||
# self.flip_ref_entry.setFixedWidth(60)
|
||||
|
||||
self.flip_ref_button = FCButton()
|
||||
self.flip_ref_button.set_value("Add")
|
||||
|
@ -306,10 +321,13 @@ class ToolTransform(FlatCAMTool):
|
|||
"SHIFT key. Then click Add button to insert.")
|
||||
self.flip_ref_button.setFixedWidth(60)
|
||||
|
||||
form4_child.addRow(self.flipx_button, self.flipy_button)
|
||||
form4_child_1.addRow(self.flip_ref_entry, self.flip_ref_button)
|
||||
form4_child_hlay.addStretch()
|
||||
form4_child_hlay.addWidget(self.flipx_button)
|
||||
form4_child_hlay.addWidget(self.flipy_button)
|
||||
|
||||
form4_child_1.addWidget(self.flip_ref_entry)
|
||||
form4_child_1.addWidget(self.flip_ref_button)
|
||||
|
||||
form4_layout.addRow(self.empty_label, form4_child)
|
||||
form4_layout.addRow(self.flip_ref_cb)
|
||||
form4_layout.addRow(self.flip_ref_label, form4_child_1)
|
||||
self.ois_flip = OptionalInputSection(self.flip_ref_cb,
|
||||
|
|
Loading…
Reference in New Issue