evride / skylight Goto Github PK
View Code? Open in Web Editor NEWSkylight is a simple control program for DLP 3D printers
Skylight is a simple control program for DLP 3D printers
Updated to latest commit: 5f1597a
C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master>main.py
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python34\lib\threading.py", line 920, in _bootstrap_inner
self.run()
File "C:\Python34\lib\threading.py", line 868, in run
self._target(_self._args, *_self._kwargs)
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\main.py",
line 62, in sliceFile
sliceComplete()
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\main.py",
line 65, in sliceComplete
handler.openFile('temp.svg')
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\PrintHand
ler.py", line 66, in openFile
self.svg = ET.parse(filename).getroot()
File "C:\Python34\lib\xml\etree\ElementTree.py", line 1187, in parse
tree.parse(source, parser)
File "C:\Python34\lib\xml\etree\ElementTree.py", line 587, in parse
source = open(source, "rb")
FileNotFoundError: [Errno 2] No such file or directory: 'temp.svg'
Between lines 48 and 49, add this to the 'if' statement:
self.write("G91")
time.sleep(.05)
Starting @ line 387, I have marked my line changes with '# sg' as i found with experience the default values were limiting to the user:
Label(self, text="Layer Height (mm)").pack(anchor=W)
self.layerHeightInput = Spinbox(self, from_=0.000, to=1.000, increment=0.005, format="%.3f" , textvariable=self.vLayerHeight) # sg
self.layerHeightInput.pack(anchor=W)
Label(self, text="Exposure Time (ms)").pack(anchor=W)
self.exposureTimeInput = Spinbox(self, from_=0, to=100000, increment=100 , textvariable=self.vExposureTime) # sg
self.exposureTimeInput.pack(anchor=W)
Label(self, text="Starting Exposure Time (ms)").pack(anchor=W)
self.startExposureInput = Spinbox(self, from_=0, to=100000, increment=100 , textvariable=self.vStartingExposureTime) # sg
self.startExposureInput.pack(anchor=W)
Label(self, text="Starting Layers").pack(anchor=W)
self.startingLayersInput = Spinbox(self, from_=0, to=100, increment=1 , textvariable=self.vStartingLayers)
self.startingLayersInput.pack(anchor=W)
Label(self, text="Post-Exposure Pause (ms)").pack(anchor=W)
self.postPauseInput = Spinbox(self, from_=0, to=100000, increment=50 , textvariable=self.vPostPause) # sg
self.postPauseInput.pack(anchor=W)
Label(self, text="Z-Retract Distance (mm)").pack(anchor=W)
self.zRetractInput = Spinbox(self, from_=0, to=5000, increment=50 , textvariable=self.vRetractDistance)
self.zRetractInput.pack(anchor=W)
Label(self, text="Z-Retract Speed (mm/min)").pack(anchor=W)
self.retractSpeedInput = Spinbox(self, from_=0, to=500, increment=25 , textvariable=self.vRetractSpeed) # sg
self.retractSpeedInput.pack(anchor=W)
Label(self, text="Z-Return Speed (mm/min)").pack(anchor=W)
self.returnSpeedInput = Spinbox(self, from_=0, to=500, increment=25 , textvariable=self.vReturnSpeed) # sg
self.returnSpeedInput.pack(anchor=W)
Label(self, text="Pre-Exposure Pause (ms)").pack(anchor=W)
self.prePauseInput = Spinbox(self, from_=0, to=100000, increment=50 , textvariable=self.vPrePause) # sg
self.prePauseInput.pack(anchor=W)
From latest commit: 5f1597a
To get around the problem of no 'temp.svg' file (Issue 4), I created an empty temp.svg in Inkscape, saved it, and moved it to the Skylight root directory. Reran the program, selected a STL to slice, and received the following traceback:
C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master>main.py
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python34\lib\threading.py", line 920, in _bootstrap_inner
self.run()
File "C:\Python34\lib\threading.py", line 868, in run
self._target(_self._args, *_self._kwargs)
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\main.py",
line 62, in sliceFile
sliceComplete()
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\main.py",
line 65, in sliceComplete
handler.openFile('temp.svg')
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\PrintHand
ler.py", line 67, in openFile
self.processData()
File "C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master\PrintHand
ler.py", line 74, in processData
colorStart = style.find('fill:')
AttributeError: 'NoneType' object has no attribute 'find'
C:\Users\sgraber\Downloads\Skylight-master (1)\Skylight-master>
Would it be possible to add Start and End gcode text boxes to the GUI? I normally like to do a G1 Z15 F500 at the very end of a print in Creation Workshop so I can lift my model out of the resin at the very end of a print. :)
Would be nice to be able to Save configuration changes from a File dropdown menu instead of having to close and reopen the program to Save changes to configuration options. :)
C:\Users\Shane\Downloads\Skylight-master\Skylight-master>main.py
Traceback (most recent call last):
File "C:\Python34\lib\tkinter__init__.py", line 1533, in call
return self.func(*args)
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
304, in settingChanged
config.set('layerHeight', float(vLayerHeight.get()))
ValueError: could not convert string to float:
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
462, in
root.mainloop()
File "C:\Python34\lib\tkinter__init__.py", line 1120, in mainloop
self.tk.mainloop(n)
File "C:\Python34\lib\tkinter__init__.py", line 1537, in call
self.widget._report_exception()
AttributeError: 'StringVar' object has no attribute '_report_exception'
C:\Users\Shane\Downloads\Skylight-master\Skylight-master>
In order for slicing to occur, the user must make a copy of the main Slic3r folder and place it into the root of the Skylight directory. Skylight calls /slic3r/slic3r.exe when slicing the stl.
After placing Slic3r into the root of the Skylight folder, the following error occurs when trying to slice a STL:
C:\Users\Shane\Downloads\Skylight-master\Skylight-master>main.py
Traceback (most recent call last):
File "C:\Python34\lib\tkinter__init__.py", line 1533, in call
return self.func(*args)
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
231, in layerChanged
validateDim(self.selectedLayer, self.layerSelector)
TypeError: validateDim() missing 1 required positional argument: 'field'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
462, in
root.mainloop()
File "C:\Python34\lib\tkinter__init__.py", line 1120, in mainloop
self.tk.mainloop(n)
File "C:\Python34\lib\tkinter__init__.py", line 1537, in call
self.widget._report_exception()
AttributeError: 'StringVar' object has no attribute '_report_exception'
Exception in thread Thread-1:
Traceback (most recent call last):
File "C:\Python34\lib\threading.py", line 920, in _bootstrap_inner
self.run()
File "C:\Python34\lib\threading.py", line 868, in run
self.target(self.args, *self.kwargs)
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
62, in sliceFile
sliceComplete()
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
66, in sliceComplete
viewLayerFrame.setHandler(handler)
File "C:\Users\Shane\Downloads\Skylight-master\Skylight-master\main.py", line
220, in setHandler
self.layerSelector['from'] = 1
File "C:\Python34\lib\tkinter__init.py", line 1326, in setitem
self.configure({key: value})
File "C:\Python34\lib\tkinter__init.py", line 1319, in configure
return self.configure('configure', cnf, kw)
File "C:\Python34\lib\tkinter__init.py", line 1310, in _configure
self.tk.call(_flatten((self._w, cmd)) + self._options(cnf))
RuntimeError: main thread is not in main loop
C:\Users\Shane\Downloads\Skylight-master\Skylight-master>
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.