Close



Page 1 of 2 12 LastLast
Results 1 to 10 of 16
  1. #1
    Technician
    Join Date
    Mar 2021
    Posts
    63

    When to use 'Support' option?

    Hope my screenshot clearly explains my query:

    08-CoffeeLid-Cura.jpg

    Q1: Is it therefore down entirely to the user to decide on that option?

    Q2: I'd also appreciate feedback on my code please.

    Code:
    $fn=100;
    translate ([0,0,6])
    rotate([180,0,0]){
    
    linear_extrude(6){
    circle(d=74);
    }
    linear_extrude(3){
    circle(d=87);
    }
    translate([0,0,-10])
    linear_extrude(12){
        circle(d=6);
    }
    }
    translate([0,0,13])
    linear_extrude(3){
    circle(d=12);
    }

  2. #2
    Technician
    Join Date
    Mar 2021
    Posts
    63
    I learned elsewhere that
    A1: Cura was correct to add support (although it was far more substantial than i'd expected).
    A2: My code was OK but 'cylinder' is better than using Linear_Extrude on a circle.

  3. #3
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,436
    Add printbus on Thingiverse
    Yeah, I was going to say the same thing about cylinder vs. linear extrude applied to a circle. I also typically use a $fn for each instance of a circle, sphere or cylinder so that I can adjust the number of facets based on the diameter. For example, having 100 facets on the narrow stem is a bit of overkill.

    So, something like this...
    Code:
    cylinder ( d=74, h=3, $fn=100 );
    translate ([ 0, 0, 3])
      cylinder ( d=87, h=3, $fn=100 );
    translate ([ 0, 0, 6 ])
      cylinder ( d=6, h=9, $fn=20 );
    translate ([ 0, 0, 13 ])
      cylinder ( d=12, h=3, $fn=36 );
    }
    I could offer more style comments like defining the height and diameters as parameters instead of hardcoding them, but that's another level of preference.

    I view the need for supports driven by a number of factors. Print temp, application of print cooling airflow, extent of an overhang, are some factors that come into mind that can make a difference. In general, I'd say that yes, that lip is going to require supports in order to print. I'm not familiar with supports in Cura, but in Simplify3D there are a lot of tweaks that can be made regarding the type of support and the nature of the interface with the desired print. It can take some experimentation to get that working right.

  4. #4
    Technician
    Join Date
    Mar 2021
    Posts
    63
    Thanks a bunch Kevin, great post! Particularly for that advice about facets. I actually tried to get a deliberately low facet value for the little handle but gave up and settled for that universal 100. All because I couldn't find the syntax to confine it to a single object. (Cheat Sheet doesn't show me how/where to use it.)


    I intend to start using parameters. Didn't on that first design due more to impatience than ignorance ;-)


    Simplify 3D looks good, but at $149 (about £108) I'll settle with Cura for now. Barely used the features of that yet!


    Support! Did you see the discussion I had at
    https://www.reddit.com/r/openscad/co...upport_option/
    That taught me a lot, and with subsequent reading I now appreciate that even apparently trival designs are not so trivial ;-)


    BTW, did you leave an unwanted curly bracket at the end of your code? Works fine without it. And it also triggered me to learn that I can do a 'collective' translate() by using curly brackets.


    Finally, an associated query (which I've also added to that reddit thread): do you know how to ensure there's not even a tiny gap between a model's surface and the base?

  5. #5
    Staff Engineer printbus's Avatar
    Join Date
    May 2014
    Location
    Highlands Ranch, Colorado USA
    Posts
    1,436
    Add printbus on Thingiverse
    Quote Originally Posted by terrypin View Post
    Thanks a bunch Kevin, great post! Particularly for that advice about facets. I actually tried to get a deliberately low facet value for the little handle but gave up and settled for that universal 100. All because I couldn't find the syntax to confine it to a single object. (Cheat Sheet doesn't show me how/where to use it.)
    You're correct that the cheat sheet doesn't show all of the parameter options. The cheat sheet, however, is a great tool to have available online since each of the table entries are hyperlinks for more detail. Clicking on cylinder for example brings you to the detail page for that object, including a list of all the acceptable parameters.


    Simplify 3D looks good, but at $149 (about £108) I'll settle with Cura for now. Barely used the features of that yet!
    Yeah, Simplify3D is pricey. I bought it years ago when it was $99 USD and I had grown frustrated with everything else, including Cura. Actually, support capability was a key reason to why I went with Simplify3D. I would assume other options like Cura have improved since then, and I'd likely have a harder time spending the $149 today.


    Support! Did you see the discussion I had at
    https://www.reddit.com/r/openscad/co...upport_option/
    That taught me a lot, and with subsequent reading I now appreciate that even apparently trival designs are not so trivial ;-)
    No, I hadn't seen that. I didn't even know there was an openscad reddit page. Joined. Just what I need - another reddit time suck.


    BTW, did you leave an unwanted curly bracket at the end of your code? Works fine without it. And it also triggered me to learn that I can do a 'collective' translate() by using curly brackets.
    My bad. My test file had a combination of your script and my script so I could overlap the results, and that evidently led to an extra bracket being caught up in the copy and paste.
    The curly brackets are a powerful tool.


    Finally, an associated query (which I've also added to that reddit thread): do you know how to ensure there's not even a tiny gap between a model's surface and the base?
    I'm not sure what you're asking. If you're asking about how to make sure the bottom of your lid will end up right at z=0 on your print bed, there's no issue. Openscad won't leave a gap under that first cylinder, and even if it did, most (if not all) slicers will automatically place an imported design so that the very bottom of it sits at z=0.

    If you're asking how to ensure there is no gap between the cylinder stackup in your design, well, that's a different question. For simplicity, I ignored that in the sample code I threw back at you. There's generally not much of a problem with openscad leaving infinitesimally small gaps, but there are ways to ensure it. I find this more of a concern once you start applying a difference to carve away from solids in openscad. This can leave you with an infinitesimally thin slice of material that ghosts in and out as you rotate or move around the model view in openscad. Most people ignore that ghosting effect since it doesn't actually lead to a printing issue, but I find it annoying and strive to eliminate it. It's all about providing some overlap between elements in the design - let me know if you want me to expand on that.

  6. #6
    Technician
    Join Date
    Mar 2021
    Posts
    63
    If you're asking about how to make sure the bottom of your lid will end up right at z=0 on your print bed, there's no issue.

    Yep, that was it. I had in mind an arithmetic error - typically when using Difference - going unnoticed, placing the model above the base.. But I've now learnt how to select a surface in Cura and elect to have that on the base.

  7. #7
    Super Moderator curious aardvark's Avatar
    Join Date
    Jul 2014
    Posts
    8,801
    if you wanted to make that completely without supports.

    print the shaft and bottom cylinder as one piece.
    then have a hole through the second cylinder so that it will fit over the shaft.
    And nhave the same size hole partially through the top cylinder.
    And just press and glue the three parts together :-)

    you'll also find that $fn=50;
    is usually round enough, the printer and slicer will round it off even more.

    I always used to use fn=100
    these days I rarely go higher than 75 and normally nearer 50. And It makes no obvious difference.

    uhu all purpose glue is the best thing I've found for pla. Pretty sure whatever solvent it has does a partial dissolve on the pla.
    I do know when i've deliberately stuck a couple pieces together and then broken them - they never break at the glue line.

    have you bought a set of micro files yet ?
    I prefer to print holes tight and then file to the fit I want.

    Put it this way - if you make the hole too large, it can't be reduced. But if you make it too small - you can easily enlarge it.
    Last edited by curious aardvark; 04-06-2021 at 04:13 PM.

  8. #8
    Technician
    Join Date
    Mar 2021
    Posts
    63
    Thanks CA. I managed to cleanly remove the main Cura support around the rim. But not the much smaller support underneath the little pull tag on top, which broke. Luckily enough left to ream out a shallow hole and glue it with superglue.

    I realised afterwards, reading up on Support in general, that I should have done it exactly as you described.But I’ve since decided that if I print another for the same purpose I’ll simply enlarge the lower cylinder and hollow it out, effectively turning the ‘rim’ into a ‘lip’, and hence eliminating the need for support. The pull tag could also probably do without support by being a single tapered cylinder.

    Or I could just buy a heating pad!
    Last edited by terrypin; 04-07-2021 at 01:20 AM.

  9. #9
    Super Moderator curious aardvark's Avatar
    Join Date
    Jul 2014
    Posts
    8,801
    Now you're getting it :-)

    If you bear in mkind how a 3d printer works whilst you are designing. You pretty much never need to use supports.

    You can build out oir in at up to a 45 degree angle, beyond that it tends to get ugly.

    here's an example I knocked up monday:
    $fn=50;
    difference(){
    union(){
    difference(){
    cube([100,40,30],true);
    translate([0,0,2])cube([96,36,30],true);
    } // end diffe


    translate([40,18,0]) resize([14,8,14])sphere(d=5);
    translate([-40,18,0]) resize([14,8,14])sphere(d=5);
    } // end union

    translate([40,20,0]) rotate([90,0,0]) cylinder(d=10.4, h=3.25);
    translate([-40,20,0]) rotate([90,0,0]) cylinder(d=10.4, h=3.25);
    translate([0,30,0]) cube([100,20,30],true);
    } // end diff
    Now the code isn't pretty - cos I just wanted a box I could glue magnets to and attach to metal things like a magnetic window box.
    The magnets are 10mmx3mm

    If i'd just popped a cylinder into the sdie of the box. it would have needed supports.
    So being a sneaky bugger I used a flattend sphere and popped the magnet socket into that.



    The result being a box that has two magnets flush with the side that can be printed cleanly at 0.3mm layer height and - on the sapphire pro - 150mms
    With no supports needed.

    The magnets are a fairly loose fit - as I glued them. I could have made the hole diameter smaller and used a press fit. But I wasn't sure about applying pliers to the sockets so just used glue.
    They are great bits of kit - really useful, don't know why i didn't think of it years ago.

    But that's the beauty of 3d printing.
    You can design something that does the same job as an injection moulded part. But designed specifically to be 3d printed.

    Your homework - make the box parametric :-)
    lol
    Last edited by curious aardvark; 04-07-2021 at 09:42 AM.

  10. #10
    Technician
    Join Date
    Mar 2021
    Posts
    63
    Neat! Do you have a photo of it in use?

Page 1 of 2 12 LastLast

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •