@@ -13,10 +13,13 @@ CAD program, and create G-Code for Isolation routing.
|
|||||||
|
|
||||||
- in Geometry Editor added support for Jump To function such as that it works within the Editor Tools themselves. For now it works only in absolute jumps
|
- in Geometry Editor added support for Jump To function such as that it works within the Editor Tools themselves. For now it works only in absolute jumps
|
||||||
- modified the Jump To method such that now allows relative jump from the current mouse location
|
- modified the Jump To method such that now allows relative jump from the current mouse location
|
||||||
- fixed the Defaults upgrade overwrting the new version number with the old one
|
- fixed the Defaults upgrade overwriting the new version number with the old one
|
||||||
- fixed issue with clear_polygon3() - the one who makes 'lines' and fixed the NCC Tool
|
- fixed issue with clear_polygon3() - the one who makes 'lines' and fixed the NCC Tool
|
||||||
- some small changes in the FlatCAMGeoemtry.on_tool_add() method
|
- some small changes in the FlatCAMGeometry.on_tool_add() method
|
||||||
- made sure that in Geometry Editor the self.app.mouse attribute is updated with the current mouse position (x, y)
|
- made sure that in Geometry Editor the self.app.mouse attribute is updated with the current mouse position (x, y)
|
||||||
|
- updated the preprocessor files
|
||||||
|
- fixed the HPGL preprocessor
|
||||||
|
|
||||||
|
|
||||||
15.12.2019
|
15.12.2019
|
||||||
|
|
||||||
|
|||||||
@@ -883,7 +883,7 @@ class ExcellonObjectUI(ObjectUI):
|
|||||||
self.ois_tcz_e = OptionalInputSection(self.toolchange_cb, [self.toolchangez_entry])
|
self.ois_tcz_e = OptionalInputSection(self.toolchange_cb, [self.toolchangez_entry])
|
||||||
|
|
||||||
# Start move Z:
|
# Start move Z:
|
||||||
self.estartz_label = QtWidgets.QLabel('%s:' % _("Start move Z"))
|
self.estartz_label = QtWidgets.QLabel('%s:' % _("Start Z"))
|
||||||
self.estartz_label.setToolTip(
|
self.estartz_label.setToolTip(
|
||||||
_("Height of the tool just after start.\n"
|
_("Height of the tool just after start.\n"
|
||||||
"Delete the value if you don't need this feature.")
|
"Delete the value if you don't need this feature.")
|
||||||
|
|||||||
@@ -2584,7 +2584,7 @@ class ExcellonAdvOptPrefGroupUI(OptionsGroupUI):
|
|||||||
self.toolchangexy_entry = FCEntry()
|
self.toolchangexy_entry = FCEntry()
|
||||||
grid1.addWidget(self.toolchangexy_entry, 1, 1)
|
grid1.addWidget(self.toolchangexy_entry, 1, 1)
|
||||||
|
|
||||||
startzlabel = QtWidgets.QLabel('%s:' % _('Start move Z'))
|
startzlabel = QtWidgets.QLabel('%s:' % _('Start Z'))
|
||||||
startzlabel.setToolTip(
|
startzlabel.setToolTip(
|
||||||
_("Height of the tool just after start.\n"
|
_("Height of the tool just after start.\n"
|
||||||
"Delete the value if you don't need this feature.")
|
"Delete the value if you don't need this feature.")
|
||||||
@@ -3429,7 +3429,7 @@ class GeometryAdvOptPrefGroupUI(OptionsGroupUI):
|
|||||||
grid1.addWidget(self.toolchangexy_entry, 1, 1)
|
grid1.addWidget(self.toolchangexy_entry, 1, 1)
|
||||||
|
|
||||||
# Start move Z
|
# Start move Z
|
||||||
startzlabel = QtWidgets.QLabel('%s:' % _('Start move Z'))
|
startzlabel = QtWidgets.QLabel('%s:' % _('Start Z'))
|
||||||
startzlabel.setToolTip(
|
startzlabel.setToolTip(
|
||||||
_("Height of the tool just after starting the work.\n"
|
_("Height of the tool just after starting the work.\n"
|
||||||
"Delete the value if you don't need this feature.")
|
"Delete the value if you don't need this feature.")
|
||||||
|
|||||||
@@ -100,7 +100,6 @@ class Berta_CNC(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Matthieu Berthomé #
|
# File Author: Matthieu Berthomé #
|
||||||
# Date: 5/26/2017 #
|
# Date: 5/26/2017 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
|
|||||||
@@ -1,16 +1,15 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Matthieu Berthomé, Daniel Friderich #
|
# File Author: Matthieu Berthomé, Daniel Friderich #
|
||||||
# Date: 12/15/2019 #
|
# Date: 12/15/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
|
|
||||||
class ISEL_ICP_CNC(FlatCAMPostProc):
|
class ISEL_ICP_CNC(FlatCAMPostProc):
|
||||||
|
|
||||||
include_header = False
|
include_header = False
|
||||||
|
|
||||||
def start_code(self, p):
|
def start_code(self, p):
|
||||||
@@ -23,46 +22,39 @@ class ISEL_ICP_CNC(FlatCAMPostProc):
|
|||||||
ymin = '%.*f' % (p.coords_decimals, p['options']['ymin'])
|
ymin = '%.*f' % (p.coords_decimals, p['options']['ymin'])
|
||||||
ymax = '%.*f' % (p.coords_decimals, p['options']['ymax'])
|
ymax = '%.*f' % (p.coords_decimals, p['options']['ymax'])
|
||||||
|
|
||||||
gcode += 'IMF_PBL flatcam\r\n'
|
gcode += 'IMF_PBL flatcam\n\n'
|
||||||
|
|
||||||
if str(p['options']['type']) == 'Geometry':
|
if str(p['options']['type']) == 'Geometry':
|
||||||
gcode += '; TOOL DIAMETER: ' + str(p['options']['tool_dia']) + units + '\r\n'
|
gcode += '; TOOL DIAMETER: ' + str(p['options']['tool_dia']) + units + '\n'
|
||||||
|
gcode += '; Spindle Speed: %s RPM\n' % str(p['spindlespeed'])
|
||||||
gcode += '; Spindle Speed: %s RPM\r\n' % str(p['spindlespeed'])
|
gcode += '; Feedrate: ' + str(p['feedrate']) + units + '/min' + '\n'
|
||||||
|
|
||||||
gcode += '; Feedrate: ' + str(p['feedrate']) + units + '/min' + '\r\n'
|
|
||||||
|
|
||||||
if str(p['options']['type']) == 'Geometry':
|
if str(p['options']['type']) == 'Geometry':
|
||||||
gcode += '; Feedrate_Z: ' + str(p['z_feedrate']) + units + '/min' + '\r\n'
|
gcode += '; Feedrate_Z: ' + str(p['z_feedrate']) + units + '/min' + '\n'
|
||||||
|
gcode += '\n'
|
||||||
gcode += '; Feedrate rapids ' + str(p['feedrate_rapid']) + units + '/min' + '\r\n\r\n'
|
gcode += '; Z_Cut: ' + str(p['z_cut']) + units + '\n'
|
||||||
gcode += '; Z_Cut: ' + str(p['z_cut']) + units + '\r\n'
|
|
||||||
|
|
||||||
if str(p['options']['type']) == 'Geometry':
|
if str(p['options']['type']) == 'Geometry':
|
||||||
if p['multidepth'] is True:
|
if p['multidepth'] is True:
|
||||||
gcode += '; DepthPerCut: ' + str(p['z_depthpercut']) + units + ' <=>' + \
|
gcode += '; DepthPerCut: ' + str(p['z_depthpercut']) + units + ' <=>' + \
|
||||||
str(math.ceil(abs(p['z_cut']) / p['z_depthpercut'])) + ' passes' + '\r\n'
|
str(math.ceil(abs(p['z_cut']) / p['z_depthpercut'])) + ' passes' + '\n'
|
||||||
|
gcode += '; Z_Move: ' + str(p['z_move']) + units + '\n'
|
||||||
gcode += '; Z_Move: ' + str(p['z_move']) + units + '\r\n'
|
gcode += '; Z Toolchange: ' + str(p['z_toolchange']) + units + '\n'
|
||||||
gcode += '; Z Toolchange: ' + str(p['z_toolchange']) + units + '\r\n'
|
|
||||||
|
|
||||||
if coords_xy is not None:
|
if coords_xy is not None:
|
||||||
gcode += '; X,Y Toolchange: ' + "%.*f, %.*f" % (p.decimals, coords_xy[0],
|
gcode += '; X,Y Toolchange: ' + "%.*f, %.*f" % (p.decimals, coords_xy[0],
|
||||||
p.decimals, coords_xy[1]) + units + '\r\n'
|
p.decimals, coords_xy[1]) + units + '\n'
|
||||||
else:
|
else:
|
||||||
gcode += '; X,Y Toolchange: ' + "None" + units + '\r\n'
|
gcode += '; X,Y Toolchange: ' + "None" + units + '\n'
|
||||||
|
gcode += '; Z Start: ' + str(p['startz']) + units + '\n'
|
||||||
gcode += '; Z Start: ' + str(p['startz']) + units + '\r\n'
|
gcode += '; Z End: ' + str(p['z_end']) + units + '\n'
|
||||||
gcode += '; Z End: ' + str(p['z_end']) + units + '\r\n'
|
gcode += '; Steps per circle: ' + str(p['steps_per_circle']) + '\n'
|
||||||
gcode += '; Steps per circle: ' + str(p['steps_per_circle']) + '\r\n'
|
|
||||||
|
|
||||||
if str(p['options']['type']) == 'Excellon' or str(p['options']['type']) == 'Excellon Geometry':
|
if str(p['options']['type']) == 'Excellon' or str(p['options']['type']) == 'Excellon Geometry':
|
||||||
gcode += '; Preprocessor Excellon: ' + str(p['pp_excellon_name']) + '\r\n'
|
gcode += '; Preprocessor Excellon: ' + str(p['pp_excellon_name']) + '\n'
|
||||||
else:
|
else:
|
||||||
gcode += '; Preprocessor Geometry: ' + str(p['pp_geometry_name']) + '\r\n'
|
gcode += '; Preprocessor Geometry: ' + str(p['pp_geometry_name']) + '\n'
|
||||||
|
gcode += '\n'
|
||||||
|
|
||||||
gcode += '; X range: ' + '{: >9s}'.format(xmin) + ' ... ' + '{: >9s}'.format(xmax) + ' ' + units + '\r\n'
|
gcode += '; X range: ' + '{: >9s}'.format(xmin) + ' ... ' + '{: >9s}'.format(xmax) + ' ' + units + '\n'
|
||||||
gcode += '; Y range: ' + '{: >9s}'.format(ymin) + ' ... ' + '{: >9s}'.format(ymax) + ' ' + units + '\r\n'
|
gcode += '; Y range: ' + '{: >9s}'.format(ymin) + ' ... ' + '{: >9s}'.format(ymax) + ' ' + units + '\n'
|
||||||
|
|
||||||
return gcode
|
return gcode
|
||||||
|
|
||||||
@@ -89,24 +81,26 @@ class ISEL_ICP_CNC(FlatCAMPostProc):
|
|||||||
if i[0] == p.tool:
|
if i[0] == p.tool:
|
||||||
no_drills = i[2]
|
no_drills = i[2]
|
||||||
|
|
||||||
gcode = "GETTOOL {tool}\r\n; Changed to Tool Dia = {toolC}".format(tool=int(p.tool), t_drills=no_drills, toolC=toolC_formatted)
|
gcode = "GETTOOL {tool}\n; Changed to Tool Dia = {toolC}".format(tool=int(p.tool), t_drills=no_drills,
|
||||||
|
toolC=toolC_formatted)
|
||||||
|
|
||||||
if f_plunge is True:
|
if f_plunge is True:
|
||||||
gcode += '\r\nFASTABS Z' + str(int(p.z_move * 1000))
|
gcode += '\nFASTABS Z' + str(int(p.z_move * 1000))
|
||||||
return gcode
|
return gcode
|
||||||
|
|
||||||
else:
|
else:
|
||||||
gcode = "GETTOOL {tool}\r\n; Changed to Tool Dia = {toolC})".format(tool=int(p.tool), toolC=toolC_formatted)
|
gcode = "GETTOOL {tool}\n; Changed to Tool Dia = {toolC}".format(tool=int(p.tool), toolC=toolC_formatted)
|
||||||
|
|
||||||
if f_plunge is True:
|
if f_plunge is True:
|
||||||
gcode += '\r\nFASTABS Z' + str(int(p.z_move * 1000))
|
gcode += '\nFASTABS Z' + str(int(p.z_move * 1000))
|
||||||
return gcode
|
return gcode
|
||||||
|
|
||||||
def up_to_zero_code(self, p):
|
def up_to_zero_code(self, p):
|
||||||
return 'MOVEABS Z0'
|
return 'MOVEABS Z0'
|
||||||
|
|
||||||
def position_code(self, p):
|
def position_code(self, p):
|
||||||
return ('X' + str(int(p.x * 1000)) + ' Y' + str(int(p.y * 1000)))
|
return 'X' + str(int(p.x * 1000)) + ' Y' + str(int(p.y * 1000))
|
||||||
|
|
||||||
def rapid_code(self, p):
|
def rapid_code(self, p):
|
||||||
return ('FASTABS ' + self.position_code(p)).format(**p)
|
return ('FASTABS ' + self.position_code(p)).format(**p)
|
||||||
|
|
||||||
@@ -115,9 +109,9 @@ class ISEL_ICP_CNC(FlatCAMPostProc):
|
|||||||
|
|
||||||
def end_code(self, p):
|
def end_code(self, p):
|
||||||
gcode = ''
|
gcode = ''
|
||||||
gcode += 'WPCLEAR\r\n'
|
gcode += 'WPCLEAR\n'
|
||||||
gcode += 'FASTABS Z0\r\n'
|
gcode += 'FASTABS Z0\n'
|
||||||
gcode += 'FASTABS X0 Y0\r\n'
|
gcode += 'FASTABS X0 Y0\n'
|
||||||
gcode += 'PROGEND'
|
gcode += 'PROGEND'
|
||||||
return gcode
|
return gcode
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -71,7 +71,6 @@ class Paste_1(FlatCAMPostProc_Tools):
|
|||||||
def toolchange_code(self, p):
|
def toolchange_code(self, p):
|
||||||
z_toolchange = float(p['z_toolchange'])
|
z_toolchange = float(p['z_toolchange'])
|
||||||
toolchangexy = [float(eval(a)) for a in p['xy_toolchange'].split(",") if a != '']
|
toolchangexy = [float(eval(a)) for a in p['xy_toolchange'].split(",") if a != '']
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -87,11 +87,13 @@ class Repetier(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -89,6 +89,9 @@ class Toolchange_Custom(FlatCAMPostProc):
|
|||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -90,11 +90,12 @@ class Toolchange_Probe_MACH3(FlatCAMPostProc):
|
|||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
|
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -85,11 +85,13 @@ class Toolchange_manual(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
@@ -180,8 +182,7 @@ M0
|
|||||||
G00 Z{z_toolchange}
|
G00 Z{z_toolchange}
|
||||||
(MSG, Now the tool can be tightened more securely.)
|
(MSG, Now the tool can be tightened more securely.)
|
||||||
M0
|
M0
|
||||||
""".format(z_toolchange=self.coordinate_format%(p.coords_decimals, z_toolchange),
|
""".format(z_toolchange=self.coordinate_format % (p.coords_decimals, z_toolchange), tool=int(p.tool),
|
||||||
tool=int(p.tool),
|
|
||||||
toolC=toolC_formatted)
|
toolC=toolC_formatted)
|
||||||
|
|
||||||
if f_plunge is True:
|
if f_plunge is True:
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Matthieu Berthomé #
|
# File Author: Matthieu Berthomé #
|
||||||
# Date: 5/26/2017 #
|
# Date: 5/26/2017 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -86,11 +86,13 @@ class default(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Matthieu Berthomé #
|
# File Author: Matthieu Berthomé #
|
||||||
# Date: 5/26/2017 #
|
# Date: 5/26/2017 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -85,11 +85,13 @@ class grbl_11(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Matthieu Berthomé #
|
# File Author: Matthieu Berthomé #
|
||||||
# Date: 5/26/2017 #
|
# Date: 5/26/2017 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -49,8 +49,19 @@ class hpgl(FlatCAMPostProc):
|
|||||||
y = p.y
|
y = p.y
|
||||||
|
|
||||||
# we need to have the coordinates as multiples of 0.025mm
|
# we need to have the coordinates as multiples of 0.025mm
|
||||||
x = round(x / 0.025) * 25 / 1000
|
x = round(x * 40)
|
||||||
y = round(y / 0.025) * 25 / 1000
|
y = round(y * 40)
|
||||||
|
|
||||||
|
# constrain the x and y values within the domain of valid values: [-32767 ... 32768]
|
||||||
|
if x <= -32767:
|
||||||
|
x = -32767
|
||||||
|
if x >= 32768:
|
||||||
|
x = 32768
|
||||||
|
|
||||||
|
if y <= -32767:
|
||||||
|
y = -32767
|
||||||
|
if y >= 32768:
|
||||||
|
y = 32768
|
||||||
|
|
||||||
return ('PA' + self.coordinate_format + ',' + self.coordinate_format + ';') % \
|
return ('PA' + self.coordinate_format + ',' + self.coordinate_format + ';') % \
|
||||||
(p.coords_decimals, x, p.coords_decimals, y)
|
(p.coords_decimals, x, p.coords_decimals, y)
|
||||||
|
|||||||
@@ -1,10 +1,10 @@
|
|||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
# FlatCAM: 2D Post-processing for Manufacturing #
|
# FlatCAM: 2D Post-processing for Manufacturing #
|
||||||
# http://flatcam.org #
|
# http://flatcam.org #
|
||||||
# File Author: Marius Adrian Stanciu (c) #
|
# File Author: Marius Adrian Stanciu (c) #
|
||||||
# Date: 3/10/2019 #
|
# Date: 3/10/2019 #
|
||||||
# MIT Licence #
|
# MIT Licence #
|
||||||
# ########################################################## ##
|
# ##########################################################
|
||||||
|
|
||||||
from FlatCAMPostProc import *
|
from FlatCAMPostProc import *
|
||||||
|
|
||||||
@@ -93,7 +93,6 @@ class line_xyz(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
xy_toolchange = p.xy_toolchange
|
xy_toolchange = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if xy_toolchange is not None:
|
if xy_toolchange is not None:
|
||||||
x_toolchange = xy_toolchange[0]
|
x_toolchange = xy_toolchange[0]
|
||||||
|
|||||||
@@ -87,11 +87,13 @@ class marlin(FlatCAMPostProc):
|
|||||||
z_toolchange = p.z_toolchange
|
z_toolchange = p.z_toolchange
|
||||||
toolchangexy = p.xy_toolchange
|
toolchangexy = p.xy_toolchange
|
||||||
f_plunge = p.f_plunge
|
f_plunge = p.f_plunge
|
||||||
gcode = ''
|
|
||||||
|
|
||||||
if toolchangexy is not None:
|
if toolchangexy is not None:
|
||||||
x_toolchange = toolchangexy[0]
|
x_toolchange = toolchangexy[0]
|
||||||
y_toolchange = toolchangexy[1]
|
y_toolchange = toolchangexy[1]
|
||||||
|
else:
|
||||||
|
x_toolchange = 0.0
|
||||||
|
y_toolchange = 0.0
|
||||||
|
|
||||||
no_drills = 1
|
no_drills = 1
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user