Jump to content

Progress update on the new Cura slicer


Daid

Recommended Posts

Posted · Progress update on the new Cura slicer
Feature request: varying layer heights.

Try to print the famous owl: http://www.thingiverse.com/thing:18218

With 0.2mm layer height, most of the owl comes out fine. But the top of the head is not nice. With 0.05mm layer height, the top of the head is beutiful, but the total print takes forever.

The user interface for this feature will be tricky though...

 

This is a pretty cool idea, and hopefully not too difficult to implement.

You could set 2 different layer thicknesses, one for "steep" regions (thicker), and one for "shallow" regions. Then, allow the user to set the limiting angle.

Once layers associated with shallow angles (as measured from the XY plane), the software could switch to that thinner layer height (at least for the perimeter passes).

This would make for really efficient printing, where you would blast through more vertical areas with thick layers, and crank the resolution up where it counts.

 

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer
    Doesn't KS try to compensate for this by adding extra solid infill inside the loops to try and make the wall the correct thickness?

     

    Yes, it does. It adds 'sparse infill' and 'crowning' to the parts that go below the wall thickness.

     

  • Link to post
    Share on other sites

    • 2 weeks later...
    Posted · Progress update on the new Cura slicer

    "I think it would be great (and probably easyish) to have the "bottom" layer optional."

    I'm a total noob, just been printing for a few days, but I already see a huge need for this. When printing objects you want to be hollow, you usually don't want the bottom layer, and the only way to do that and get a nice top is to hollow out the object by hand (which is a royal pain given how often meshlab crashes).

    What would be even more useful would be the abillity to have the bottom layer be a "lip" that extends in from the model edges by some programmable amount, to facilitate gluing of multipart models. And if you want to get really crazy, add the ability to put in N registration holes equally spaced radially from the center of the model at a specific inset from the edge of the model.

     

  • Link to post
    Share on other sites

    • 2 weeks later...
    Posted · Progress update on the new Cura slicer

    I have several ideas to improve the support structures implementation.

    - Add a feedrate multiplier for the support structures to print them faster.

    - Add an option to print layers of support structures in contact with the part with a 100% fill density. I've modified the raft plugin as I could to add this feature but I am limited by my programming skills : http://ultimaker.ipbhost.com/uploads/gallery/album_43/gallery_5119_43_6280.jpg

    Even better, create a solid shell just under the printed part. This option will be unusable with a single extruder. I made a quick example using blender's 3D printing tools add-on to see what it would look like : http://ultimaker.ipbhost.com/uploads/gallery/album_43/gallery_5119_43_221.jpg

    Also, for dual extruders, it would be great to have a "filament packing density" setting for each extruders, and a way to insert specific gcode commands to switch each extruder, it may be not useful for the Ultimaker, but it will be for other printers.

     

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer

    Hi everyone,

    As some people might have read, and others might have not. I'm working on replacing the slow slicing engine behind Cura.

    First a bit of history. Cura started about a year ago as a better and easier to use GUI on top of existing slicers. Back then I picked Skeinforge as the engine to use, because I knew how to get good prints out of it. And because it could slice just about anything, only a bit slow. I also left the option to use Slic3r as engine. But because Slic3r is very picky about manifold meshes I never enabled it.

    Now a year later, and Slic3r is still picky, crashes on a few models that I tried. And not that much faster then Cura. Skeinforge is running on it's last breath as people are printing larger and larger models. With more and more layers.

    And so people are pretty much forced to use KISSlicer or NetFabb for large prints. KISSlicer does a pretty good job. And once you get NetFabb configured it also does a nice job.

    So. Now that I work at Ultimaker, and I have more time to actually do stuff. I'm doing what I said I would never do. I'm making my own slicing engine. In C++. And I'm crazy (for the people that didn't know that already).

    So, what do I have? I have a working slicing engine. With:

    Basics like side walls, with infill, top/bottom filling, sparse insides.

    It doesn't do the strange "interface layers" thing that Skeinforge does.

    It does do proper bridging like Skeinforge.

    It also does retraction, combing and proper path-order-optimization. So it doesn't do a crazy amount of traveling, stays inside the model when possible.

    I just added support material today. So that's one thing crossed off the ToDo list.

    The thin wall problem? It's solved. Yes, it, is, solved!

    There is still a lot of work to be done. It's only partially integrated into the Cura GUI right now, progress bar is not working for example. About all settings in the expert-config are missing. The new "bottom cuttoff" feature (from Cura 13.03) is not implemented yet. Retraction settings are not added (retraction itself is), cooling settings are still missing. Dual-extrusion is missing, as well as project-planner support.

    And then there are a bunch of models that do slice with Skeinforge, but not yet with my new engine. So, work, work, work. But I am making awesome progress. And I hope to get a test version out to more people soon. I've send a early version to a few people. And it's been mostly positive responses.

    Oh, and did I mention it is fast? I didn't measure the latest version, but so far most things slice in seconds compared to minutes with Skeinforge. So that's awesome :smile:

    Finally, this project has gotten high priority at Ultimaker. And it will be open-source once we have a version out. So I hope to see you all slicing at light speed soon :smile:

    Also, this would be a perfect place to request features :wink:

     

    hi Daid,

    Recently, i research the Cura engine, which is a great work. And i have one question. When merge the redundant point, you use the ' int hash = ((p.x + MELD_DIST/2) / MELD_DIST) ^ (((p.y + MELD_DIST/2) / MELD_DIST) << 10) ^ (((p.z + MELD_DIST/2) / MELD_DIST) << 20);'. Could you tell me the logic of this?

    Thanks for all your hard work.

    Cheers,

    neo

     

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer

    It's an optimization. I generate a hash-code for each point, so I can put all points in a hash map to quickly compare them. Points that are near each-other have the same hash-code.

    Or, you could see it as I put each point in a 3D grid, which spacing of MELD_DIST in each cube. Every cube has it's own unique ID, which I calculate there.

    (Hash collisions can happen, but later code does fine checking of all the points that have the same hash code)

    The most important reason why this step happens is to reduce ultra-high quality models, and to get face-edge relations later on to optimize the polygon generation.

     

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer

    Hi Daid,

    Like everyone else I love Cura and each version gets better and better BUT one thing hasn't changed and that is the print by USB interface Could it be possible to improve this to at least include a dual head option or reconise its a two colour print. I don't get on with the sd card and controller and I'm sure others don't. I don't see any differance in quality between printing via USB and SD card I just find it easier to do it all from one computer.

    Way back at cura 12.8 or maybe before it came with printrun which I think is a nice easy to use and see whats going on interface but had plenty of options to tinker with pre printing ( i use it to set up the printer, check its movement etc ) but it also lacks a two printhead option.

    Regards

    Mark

     

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer

    I'm redoing the whole printing interface code right now in some spare time (no final date on it), as I'm generalizing the code so it can be used for other interfaces next to USB printing (WiFi printing for example)

    I'll try to keep multiple extruders in mind.

     

  • Link to post
    Share on other sites

    Posted · Progress update on the new Cura slicer

    That's good to know.

    Thanks

    I would like to say well done on an outstanding product, I have just recommended Cura to someone on another forum with a different printer as I feel that Cura is the most straight forward and easiest to use.

    Regards

    Mark

     

  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • Introducing Universal Cura Projects in the UltiMaker Cura 5.7 beta
        Strap in for the first Cura release of 2024! This 5.7 beta release brings new material profiles as well as cloud printing for Method series printers, and introduces a powerful new way of sharing print settings using printer-agnostic project files! Also, if you want to download the cute dinosaur card holder featured below, it was specially designed for this release and can be found on Thingiverse! 
        • 10 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
        • 0 replies
    ×
    ×
    • Create New...