Jump to content

Is there any way to get cura to slice adjacent object boundaries each as "infill" rather than "skin?"


Recommended Posts

Posted · Is there any way to get cura to slice adjacent object boundaries each as "infill" rather than "skin?"

I've started working on the pen colorizer post-processing script to make the script general-purpose by cleaning up some mishandled use-cases. The biggest issue I've encountered is that, in order to have a top and bottom boundary properly colored, the script does not exclude "skin" blocks in the gcode when it makes duplicate paint layers.


This runs into problems when your print contains multiple objects with horizontal abutments, as cura sees the boundaries between the two objects and generates x number of "skin" areas on each side of the boundary to make it look pretty, even if some (or all) of those areas are completely internal to the final printed product. This is not an issue when you are using a multiple extruder setup because the material will adhere normally. However, using the colorizer script this will result in 2x painted layers on top of each other, with extremely low adhesion and an unstable final print. I've attached a screenshot to illustrate the problem.


I have an extremely rough proof of concept to handle this in post-processing by looking ahead to figure out if any part of skin is "internal" (abuts another skin) and then doing a geometric intersect to exclude the intersect from the lower level's skin. The problem with this solution is that it requires rewriting the entire layer's gcode on the fly to account for the new gap in the skin. It also has to make assumptions about the fill pattern because that information isn't retained by the gcode file. In other words, this is possible but a terrible solution.


I was looking through the docs and I noticed that cura has this exact function but for vertical boundaries (skin removal width), which converts small skin blocks into infill. Since the function is designed in terms of width, this doesn't help with my problem, but it does suggest there might be a slicer-level solution to the issue. Is there a "skin removal height" or similar option that I'm not seeing? Is this something that is even feasible for the slicer? Is there another way to skin this cat that I've missed?

Screenshot from 2023-02-07 11-05-05.png

  • Heart 1
Link to post
Share on other sites

  • 2 weeks later...
Posted · Is there any way to get cura to slice adjacent object boundaries each as "infill" rather than "skin?"

Hey @Fnor,


Welcome to the Ultimaker Community 🎉
This. Is. Amazing. 🤩


Happy Little Girl GIF by Demic


This is very much outside of my field of expertise. The only thing that comes to mind is Skin Edge Support Layers, but that's not really what you need. If you want an easier way to search the available settings, this is usually the file I use

I'll bring it up to the team to see what they can do to help you. Fingers crossed 🤞 


  • Link to post
    Share on other sites

    Posted · Is there any way to get cura to slice adjacent object boundaries each as "infill" rather than "skin?"

    Hey @Fnor,


    I discussed your issue and we have two more solution directions for you. 


    Have you considered working with:
    A. Mesh modifiers? You can read more about them here: https://support.makerbot.com/s/article/1667417981430
    B. Ironing? I believe ironing only applies to the topmost layer and I believe it can be done with a different extruder. 
    C. The Cura fork from SmartAvionics has a number of slightly different settings there might be one that you are looking for https://github.com/smartavionics/Cura


    Let us know if there is anything else we can help with. 

  • 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 the UltiMaker Factor 4
        We are happy to announce the next evolution in the UltiMaker 3D printer lineup: the UltiMaker Factor 4 industrial-grade 3D printer, designed to take manufacturing to new levels of efficiency and reliability. Factor 4 is an end-to-end 3D printing solution for light industrial applications
          • Thanks
          • Like
        • 3 replies
      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
          • Like
        • 26 replies
    • Create New...