
This fixes a very old bug in Cura where sometimes after re-slicing it would display the layer as if you've been going horizontal through the path slider, even if you never touched the horizontal path slider. This was caused by a tracking flag in the SimulationPass, _switching_layers. This bit of state in the SimulationPass was tracking whether the user is going through the vertical layer slider (True) or the horizontal path slider (False). If False, the nozzle mesh is drawn and lower layers get drawn in a shadowy shader. The state of this flag was being updated on every render by looking at whether the previous render has the same current layer number but a different path index. If so, it changed to False, meaning that it assumes you're going through the paths on a layer and things get shadowy. However if you slice a different object such that the number of layers stay the same (or at least the current layer) but the number of paths on a layer change (e.g. by reducing Maximum Resolution, or by loading a different model that happens to be equally tall) then it would falsely think you were going through the horizontal path slider. This change effectively resets this state flag when any layer data is changed in the scene. So if you re-slice, it always goes back to _switching_layers = True. The side effect is that if you were going through the paths of a layer and you re-slice, you won't end up on the same path even if the number of paths on your current layer didn't change due to the reslice. But I think that is more towards what the user would accept a re-slice to do anyway. I decided to take a look into this bug because I'm making a script to automatically refresh the screenshots of the Settings Guide plug-in. This script frequently hits cases like this, and it's easier to fix this bug than to work around it in my script.
Cura
Ultimaker Cura is a state-of-the-art slicer application to prepare your 3D models for printing with a 3D printer. With hundreds of settings and hundreds of community-managed print profiles, Ultimaker Cura is sure to lead your next project to a success.
Logging Issues
For crashes and similar issues, please attach the following information:
- (On Windows) The log as produced by dxdiag (start -> run -> dxdiag -> save output)
- The Cura GUI log file, located at
%APPDATA%\cura\<Cura version>\cura.log
(Windows), or usuallyC:\Users\\<your username>\AppData\Roaming\cura\<Cura version>\cura.log
$USER/Library/Application Support/cura/<Cura version>/cura.log
(OSX)$USER/.local/share/cura/<Cura version>/cura.log
(Ubuntu/Linux)
If the Cura user interface still starts, you can also reach this directory from the application menu in Help -> Show settings folder
For additional support, you could also ask in the #cura channel on FreeNode IRC. For help with development, there is also the #cura-dev channel.
Dependencies
- Uranium Cura is built on top of the Uranium framework.
- CuraEngine This will be needed at runtime to perform the actual slicing.
- fdm_materials Required to load a printer that has swappable material profiles.
- PySerial Only required for USB printing support.
- python-zeroconf Only required to detect mDNS-enabled printers.
Build scripts
Please check out cura-build for detailed building instructions.
Running from Source
Please check our Wiki page for details about running Cura from source.
Plugins
Please check our Wiki page for details about creating and using plugins.
Supported printers
Please check our Wiki page for guidelines about adding support for new machines.
Configuring Cura
Please check out Wiki page about configuration options for developers.
Translating Cura
Please check out Wiki page about how to translate Cura into other languages.
License
Cura is released under the terms of the LGPLv3 or higher. A copy of this license should be included with the software.