Jump to content
Ultimaker Community of 3D Printing Experts

How to access printer settings from Cura post-processing plugin?


Sporech
 Share

Recommended Posts

Posted · How to access printer settings from Cura post-processing plugin?

Hi All,

 

There are a few properties of the printer setup and slicer settings which I need to access from my post-processing plugin, such as nozzle diameter, line width etc.

Can these be accessed from the post-processing script environment?

 

Many thanks

  • Link to post
    Share on other sites

    Posted · How to access printer settings from Cura post-processing plugin?
    24 minutes ago, Sporech said:

    Hi All,

     

    There are a few properties of the printer setup and slicer settings which I need to access from my post-processing plugin, such as nozzle diameter, line width etc.

    Can these be accessed from the post-processing script environment?

     

    Many thanks

    Yep. The strech post processing script does something like that https://github.com/Ultimaker/Cura/blob/master/plugins/PostProcessingPlugin/scripts/Stretch.py#L519

    There are probably more scripts that do it as well.

  • Link to post
    Share on other sites

    Posted · How to access printer settings from Cura post-processing plugin?

    I believe you can query all those settings from the Global Container Stack.  Here's some code I've used to get the layer height setting:

     

    from UM.Application import Application
    ...
    layerHeight = Application.getInstance().getGlobalContainerStack().getProperty("layer_height", "value")

     

    It looks like "line_width" and "machine_nozzle_size"should also be an available settings. 

     

    I'm not sure where to find a definite listing of the setting names, but I was able to find these by looking through this file here: https://github.com/Ultimaker/Cura/blob/master/resources/definitions/fdmprinter.def.json

     

    But, that was just sort of a wag.

     

    Good luck!

    • Like 1
    Link to post
    Share on other sites

    Posted · How to access printer settings from Cura post-processing plugin?
    1 hour ago, bradk3 said:

    I believe you can query all those settings from the Global Container Stack. 

    Layer height is a global setting, and can be queried from the global container stack; other settings, such as the line width, can be different per extruder, so you have to get them from the extruder stack.

     

     

    from cura.Settings.ExtruderManager import ExtruderManager
    ...
    extruders = ExtruderManager.getInstance().getActiveExtruderStacks()
    line_width= extruders[0].getProperty("line_width", "value")

     

     

    • Like 2
    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
     Share

    • Our picks

      • New here? Get ahead with a free onboarding course
        Hi,
         
        Often getting started is the most difficult part of any process. A good start sets you up for success and saves you time and energy that could be spent elsewhere. That is why we have a onboarding course ready for
        Ultimaker S5 Pro Bundle, Ultimaker S5, Ultimaker S3 Ultimaker 2+ Connect.   
        They're ready for you on the Ultimaker Academy platform. All you need to do to gain access is to register your product to gain free access. 
        Ready? Register your product here in just 60 seconds.
          • Like
        • 11 replies
    ×
    ×
    • Create New...