mirror of
https://git.mirrors.martin98.com/https://github.com/Ultimaker/Cura
synced 2025-05-21 20:19:32 +08:00
25 lines
780 B
Python
25 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
|