Jump to content

0 is a value, not the absence of one. (Change in CURA?)


Brulti

Recommended Posts

Posted · 0 is a value, not the absence of one. (Change in CURA?)

Hello,

 

I just realized something, which illustrates a bit the difference of thinking between software engineers and coders and everyday folks: for the latter, 0 is a valid value, like 1 or 2 or pi or whatever, for the formers, 0 is usually used as an absence of value, meaning that if you input 0 in a field, then it tells the program to not execute whatever instruction is linked to that field, and move to the next instruction.

 

I was trying to help @4instudent with his Breakaway gap problem and realized that, when you input 0 in the 'Support Roof Line Distance' field, CURA interprets that as 'No support roof line needed' and creates a massive gap between the support and the bottom of the overhang because it doesn't create any support roof despite the option being checked, while what we wanted by inputting that value was 'No distance between the roof of the support and the bottom of the overhang, stick them together', the goal being to have the smoothest surface finish possible.

 

I haven't checked all parameters, but I'm sure there are many other examples of the 0 being understood as a 'null' answer instead of a 0 distance. Which is very confusing to the layman who has no knowledge of coding, and very frustrating even if you know the source of the problem because you have to fumble around with small values like 0.01 and hope it doesn't lead to CURA being confused because your printing profile is at 0.2 or something.

 

Could that be changed so that all the fields where the user can input a number, especially on 'distance' stuff, the 0 is read as '0 distance' instead of 'no value'? And, perhaps, put something else to mean 'no value', like leaving the field blank or using a sign like / or something?

 

Thanks

  • Link to post
    Share on other sites

    Posted · 0 is a value, not the absence of one. (Change in CURA?)

    AFAIK, in most cases Cura behaves just as you say: 0 is a value, not the absense of a value. If this is not that case, that is (in muy opinion) a bug.

  • Link to post
    Share on other sites

    Posted (edited) · 0 is a value, not the absence of one. (Change in CURA?)

    So, I have to put my hand up here and admit to committing this crime. I recently created a new setting called "Max Comb Distance With No Retract" that forces combed travel moves to use retraction if they are longer than some threshold distance (which is the value of the setting). Now, I had two choices here as to how this feature is enabled, I could either add another checkbox to make the setting active or not or I could choose a value that denotes that the setting is not active. One possibility is to make the setting default to such a large number that all combing travel moves would be shorter than that distance, say 100000000mm (or whatever). Personally, I don't like doing that because it looks ugly and you may not choose a value big enough (people are making some large form factor printers these days). So I plumped for zero and I made it explicitly obvious in the blurb for that setting that the value has to be greater than zero for the setting to be active. If the Cura guardians wish to add a checkbox to explicitly enabled/disable this setting I won't complain but I won't be doing that myself.

    Edited by burtoogle
  • Link to post
    Share on other sites

    Posted · 0 is a value, not the absence of one. (Change in CURA?)

    Actually, I would also be ok if, as an alternative to what I asked, the blurb explicitly states that 0 deactivates the setting in question or that you need a value higher than 0 for the setting to be active, as you did.

     

    But the blurb for the example I cited in my original post didn't say either of those things.

  • Link to post
    Share on other sites

    Posted · 0 is a value, not the absence of one. (Change in CURA?)

    In most cases we have two settings; A check-box "Should this be done in the first place" and a value "How much of the thing should be done if we do it"

  • Link to post
    Share on other sites

    Posted · 0 is a value, not the absence of one. (Change in CURA?)
    7 hours ago, nallath said:

    In most cases we have two settings; A check-box "Should this be done in the first place" and a value "How much of the thing should be done if we do it"

     

    'How much' is not the question that should be asked when the setting has the word 'Distance' in it.

  • 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

      • 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
        • 18 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.
          • Like
        • 0 replies
    ×
    ×
    • Create New...