- Gerber Export: made sure that if some of the coordinates in a Gerber object geometry are repeating then the resulting Gerber code include only one copy

- added a new parameter/feature: now the spindle can work in clockwise mode (CW) or counter clockwise mode (CCW)
This commit is contained in:
Marius Stanciu
2019-05-16 03:13:22 +03:00
parent b2cb0f9ffb
commit d172a3ca49
13 changed files with 149 additions and 77 deletions

View File

@@ -157,10 +157,11 @@ M6
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S' + str(p.spindlespeed)
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -260,10 +260,11 @@ M0
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S' + str(p.spindlespeed)
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -220,11 +220,12 @@ M0
def z_feedrate_code(self, p):
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self,p):
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S' + str(p.spindlespeed)
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -192,10 +192,11 @@ M0""".format(z_toolchange=self.coordinate_format%(p.coords_decimals, z_toolchang
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S' + str(p.spindlespeed)
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -191,11 +191,12 @@ M0""".format(z_toolchange=self.coordinate_format%(p.coords_decimals, z_toolchang
def z_feedrate_code(self, p):
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self,p):
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S%d' % p.spindlespeed
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -90,7 +90,11 @@ class grbl_laser(FlatCAMPostProc):
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self, p):
return ''
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return sdir
def dwell_code(self, p):
return ''

View File

@@ -193,10 +193,11 @@ M0""".format(x_toolchange=self.coordinate_format%(p.coords_decimals, x_toolchang
return 'G01 F' + str(self.feedrate_format %(p.fr_decimals, p.z_feedrate))
def spindle_code(self, p):
sdir = {'CW': 'M03', 'CCW': 'M04'}[p.spindledir]
if p.spindlespeed:
return 'M03 S' + str(p.spindlespeed)
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M03'
return sdir
def dwell_code(self, p):
if p.dwelltime:

View File

@@ -198,11 +198,12 @@ M0""".format(z_toolchange=self.coordinate_format%(p.coords_decimals, z_toolchang
def feedrate_rapid_code(self, p):
return 'F' + self.feedrate_rapid_format % (p.fr_decimals, p.feedrate_rapid)
def spindle_code(self,p):
def spindle_code(self, p):
sdir = {'CW': 'M3', 'CCW': 'M4'}[p.spindledir]
if p.spindlespeed:
return 'M3 S%d' % p.spindlespeed
return '%s S%s' % (sdir, str(p.spindlespeed))
else:
return 'M3'
return sdir
def dwell_code(self, p):
if p.dwelltime: