Files
S4-P3-Projet/pcbdevice/gcode/GcodeBuilder.py
Marc-Antoine Lafreniere 46a3a02b2a Add functions description
Add python documentation
2019-02-26 17:51:53 -05:00

34 lines
863 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 Z3')
toolUp = False
# FOOTER
gcodeCommand.append('\nG0 Z0')
gcodeCommand.append('G28')
return gcodeCommand