chiark / gitweb /
Add wipe tower size setting.
[cura.git] / Cura / cura.py
index d93a57f98310b09a1cf4b451bd595d8fa1ae204c..c631a02ff3255bb598daab70bd3574c12ad190ce 100644 (file)
@@ -23,11 +23,14 @@ def main():
                help="Internal option, do not use!")
        parser.add_option("-s", "--slice", action="store_true", dest="slice",
                help="Slice the given files instead of opening them in Cura")
+       parser.add_option("-o", "--output", action="store", type="string", dest="output",
+               help="path to write sliced file to")
+
        (options, args) = parser.parse_args()
 
        profile.loadPreferences(profile.getPreferencePath())
        if options.profile is not None:
-               profile.loadProfileFromString(options.profile)
+               profile.setProfileFromString(options.profile)
        elif options.profileini is not None:
                profile.loadProfile(options.profileini)
        else:
@@ -42,17 +45,25 @@ def main():
                from Cura.util import meshLoader
                import shutil
 
-               def commandlineProgessCallback(progress, ready):
+               def commandlineProgressCallback(progress, ready):
                        if progress >= 0 and not ready:
                                print 'Preparing: %d%%' % (progress * 100)
                scene = objectScene.Scene()
-               slicer = sliceEngine.Slicer(commandlineProgessCallback)
+               scene.updateMachineDimensions()
+               slicer = sliceEngine.Slicer(commandlineProgressCallback)
                for m in meshLoader.loadMeshes(args[0]):
                        scene.add(m)
                slicer.runSlicer(scene)
                slicer.wait()
-               shutil.copyfile(slicer.getGCodeFilename(), args[0] + '.gcode')
-               print 'GCode file saved as: %s' % (args[0] + '.gcode')
+               profile.replaceGCodeTagsFromSlicer(slicer.getGCodeFilename(), slicer)
+
+               if options.output:
+                       shutil.copyfile(slicer.getGCodeFilename(), options.output)
+                       print 'GCode file saved : %s' % options.output
+               else:
+                       shutil.copyfile(slicer.getGCodeFilename(), args[0] + '.gcode')
+                       print 'GCode file saved as: %s' % (args[0] + '.gcode')
+
                slicer.cleanup()
        else:
                from Cura.gui import app