mirror of
https://github.com/Ultimaker/Cura.git
synced 2025-07-06 22:47:29 -06:00

git-subtree-dir: plugins/GCodeWriter git-subtree-mainline:92afe31e37
git-subtree-split:6fc044387a
24 lines
780 B
Python
24 lines
780 B
Python
from UM.Mesh.MeshWriter import MeshWriter
|
|
from UM.Logger import Logger
|
|
from UM.Application import Application
|
|
import io
|
|
|
|
|
|
class GCodeWriter(MeshWriter):
|
|
def __init__(self):
|
|
super().__init__()
|
|
self._gcode = None
|
|
|
|
def write(self, file_name, storage_device, mesh_data):
|
|
if 'gcode' in file_name:
|
|
scene = Application.getInstance().getController().getScene()
|
|
gcode_list = getattr(scene, 'gcode_list')
|
|
if gcode_list:
|
|
f = storage_device.openFile(file_name, 'wt')
|
|
Logger.log('d', "Writing GCode to file %s", file_name)
|
|
for gcode in gcode_list:
|
|
f.write(gcode)
|
|
storage_device.closeFile(f)
|
|
return True
|
|
|
|
return False
|