Files
S4-P3-Projet/gcodeextractor/gcode/GcodeBuilder.py
Marc-Antoine Lafreniere a12c9fe083 Fixing bugs
Removed blocking whiles
2019-04-09 21:15:02 -04:00

35 lines
899 B
Python

def listToGCode(listIndex, pHeight, pWidth):
"""
Convert a list of matrix coordinate in a list of GCode commands
:param listIndex: List of coordinate
:param pHeight: Pixel height in mm
:param pWidth: Pixel width in mm
:return: List of all the GCode commands
"""
gcodeCommand = []
toolUp = True
if pHeight <= 0 or pWidth <= 0:
raise RuntimeError('Pixel dimension error')
# HEADER
gcodeCommand.append('G28')
gcodeCommand.append('G90\n')
for coord in listIndex:
if coord.getX() == -1 and coord.getY() == -1:
gcodeCommand.append('G0 Z0')
toolUp = True
else:
gcodeCommand.append('G0 X' + str(round(coord.getX()*pWidth, 2)) + ' Y' + str(round(coord.getY()*pHeight, 2)))
if toolUp:
gcodeCommand.append('G0 Z10.5')
toolUp = False
# FOOTER
gcodeCommand.append('\nG0 Z0')
gcodeCommand.append('G0 X0 Y0')
gcodeCommand.append('M18')
return gcodeCommand