From c09861249e6fbad0aa8262f0d642316153cfae66 Mon Sep 17 00:00:00 2001 From: Daid Date: Fri, 4 May 2012 19:28:24 +0200 Subject: [PATCH] Added stat calculation after project slicing. --- Cura/gui/projectPlanner.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Cura/gui/projectPlanner.py b/Cura/gui/projectPlanner.py index a198a76d..5f77025e 100644 --- a/Cura/gui/projectPlanner.py +++ b/Cura/gui/projectPlanner.py @@ -23,6 +23,7 @@ from util import profile from util import util3d from util import stl from util import sliceRun +from util import gcodeInterpreter class Action(): pass @@ -722,6 +723,7 @@ class ProjectSliceProgressWindow(wx.Frame): if self.abort: p.terminate() wx.CallAfter(self.statusText.SetLabel, "Aborted by user.") + resultFile.close() return line = p.stdout.readline() self.returnCode = p.wait() @@ -758,9 +760,20 @@ class ProjectSliceProgressWindow(wx.Frame): resultFile.write(';TYPE:CUSTOM\n') resultFile.write(profile.getAlterationFileContents('end.gcode')) resultFile.close() + + gcode = gcodeInterpreter.gcode() + gcode.load(self.resultFilename) + self.abort = True sliceTime = time.time() - self.sliceStartTime - wx.CallAfter(self.statusText.SetLabel, 'Slicing took: %02d:%02d' % (sliceTime / 60, sliceTime % 60)) + status = "Slicing took: %02d:%02d\n" % (sliceTime / 60, sliceTime % 60) + status = "Filament: %.2fm %.2fg\n" % (gcode.extrusionAmount / 1000, gcode.calculateWeight() * 1000) + status += "Print time: %02d:%02d\n" % (int(gcode.totalMoveTimeMinute / 60), int(gcode.totalMoveTimeMinute % 60)) + cost = gcode.calculateCost() + if cost != False: + status += "Cost: %s\n" % (cost) + wx.CallAfter(self.statusText.SetLabel, status) + wx.CallAfter(self.abortButton.SetLabel, 'Close') def main(): -- 2.30.2