Jump to content

Testers required for "exact" z-seam positioning in Cura development builds


burtoogle

Recommended Posts

Posted · Testers required for "exact" z-seam positioning in Cura development builds

Hi,

 

I have been working on implementing "exact" z-seams to avoid the rather ragged seams that can occur on curved surfaces.

 

Here's an example: first is how it was before and second is what the experimental code now produces (I have enabled coasting just so that it makes the z-seam location more obvious...

 

Screenshot_2019-10-22_10-24-49.thumb.png.2f5fe47c2a5cc49fdba10a5aaea27338.png

 

Screenshot_2019-10-22_10-25-30.thumb.png.f60e8bb7138bc487679d1abbe53a62de.png

 

This new implementation is only active when the Z Seam Alignment setting is "User Specified" and the Seam Corner Preference is "None".

 

Before, when those settings were in use, for each layer, it would choose the wall vertex that was closest to the z seam X/Y position to be the location of the z-seam. Unfortunately, the vertices are not guaranteed to align vertically unless the wall has a sharp corner (i.e. with a rectangular shaped wall, you would expect the vertices at the corners for the adjacent layers to be stacked on top of each other) so the seam comes out horribly ragged. Using a finer model mesh and small resolution values help but what it really needs to do is get away from the constraint that the z-seam has to pass through the vertices of the walls.

 

What it now does is take a vertical slice through the model using a plane that passes through the z seam X/Y position and the centre of the model's bounding box and finds where that plane cuts the model's walls and uses that as the z-seam location. Generally, the plane will cut through the model at least twice (goes in one side, comes out the other) and so it chooses the side closest to the z seam X/Y position.

 

If the plane doesn't pass through the model at all, then it just falls back to the previous behaviour of choosing the wall vertex nearest the z seam X/Y position.

 

Makes sense? Well, even if not, I would be grateful if those of you who are using my experimental builds could give this a try some time and let me have some feedback as to whether this is a good scheme or not.

 

Please note that due to a recent change in the build process, if you are using Windows, you must remove any previous installations of my build before installing the current builds. Otherwise, it will not run.

 

As always, my builds can be found at: https://www.dropbox.com/sh/s43vqzmi4d2bqe2/AAADdYdSu9iwcKa0Knqgurm4a?dl=0

 

All feedback is welcome.

 

  • Like 2
  • Thanks 1
Link to post
Share on other sites

Posted · Testers required for "exact" z-seam positioning in Cura development builds

Fantastic idea and great feature! It was always annoying that the seam was not really straight in some models.

Will give it a try the next days.....

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    Is there a way to "paint or draw" a line where the z seam would go? The line could be free hand or orthogonal.  This sounds difficult but figured I would ask.  Nice work!

    Drawn Z seam Location.PNG

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    1 hour ago, mtnbkrrick said:

    Is there a way to "paint or draw" a line where the z seam would go? The line could be free hand or orthogonal.  This sounds difficult but figured I would ask.  Nice work!

     

    No there isn't any way to do what you ask and it would be a big job to implement that I should think. It would involve UI programming to do the drawing and then the z-seam contour would have to be passed to the slicer back end which would then work in a similar way to what I have implemented in this recent development.

     

    Personally, I would not find it a useful feature because I can't draw a nice line using a mouse so the z-seam would end up at least as wobbly as it is now.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    While I may have similar issues drawing a straight line with the mouse 😉 it might be a very interesting feature to be able to drag the z seam along the surface of an object starting from a certain xy coordinate on the ground plane. That line might then go up the object in different ways (along x, along y, radially from the center of the build plate, radially from the center of mass, radially from a custom xy coordinate, etc.).

  • Link to post
    Share on other sites

    Posted (edited) · Testers required for "exact" z-seam positioning in Cura development builds

    This is really cool feature! I would like to use this. Thank you for bring another great feature.

     

    Have you pushed to your github? :)

    Edited by alexjx
  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    5 hours ago, alexjx said:

    Have you pushed to your github? 🙂

     

    Yes, my mb-master branch in CuraEngine contains this feature.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    Just made this account to post that this feature saved my day! absolutely love it <3 works like a charm.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    Did this ever get merged into mainline Cura? This would be a useful feature, but I haven't seen any updates in a few years.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    Any word on merging this into mainline Cura? I often print things that absolutely need the straight z seam and I'm stuck using this old version of Cura just for those prints. Would be excellent to have this in the new Cura with Arachne.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    On 7/29/2022 at 8:30 PM, tstone52 said:

    Any word on merging this into mainline Cura? I often print things that absolutely need the straight z seam and I'm stuck using this old version of Cura just for those prints. Would be excellent to have this in the new Cura with Arachne.

    I'd second this. I am also lost with seams all over the place.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    @burtoogle Wow, thank you so much for this – it works perfectly! The seam line is in a perfectly straight line! I wonder why they haven't implemented this in the latest version of Cura.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    32 minutes ago, Arashrk said:

    @burtoogle Wow, thank you so much for this – it works perfectly! The seam line is in a perfectly straight line! I wonder why they haven't implemented this in the latest version of Cura.

    The Cura devs have a lot on their plate as it is (you just need to look at the number of open issues and pull requests to see that). It would also require @burtoogle (or someone representing them, I guess) to make sure the code doesn't interfere with anything in newer versions of Cura, then push it as a branch into the Cura repo and submit a pull request (which can take quite a long time to get processed, owing to how they're already swamped) to get it added to the main source branch.

     

    Short version: Like all software developers, the Cura developers are only human, and they're really busy as it is. And I don't know if it's been submitted to be added, but that also needs to happen, and takes a long time to get processed, because they're really busy.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    I'm on Cura ver. 5.5.0.

     

    I'm trying to avoid having the seam near the edges in the following object to not avail despite playing with seam settings. Look at the base of it.

     

    cura_seam.thumb.jpeg.bd763a0198ebdb92631903813e83d954.jpeg

     

    The object in question is in Thingiverse with name tumstock, link https://www.thingiverse.com/thing:6322311

     

    Any hint?

  • Link to post
    Share on other sites

    Posted (edited) · Testers required for "exact" z-seam positioning in Cura development builds
    11 hours ago, Tamadite said:

    I'm on Cura ver. 5.5.0.

     

    I'm trying to avoid having the seam near the edges in the following object to not avail despite playing with seam settings. Look at the base of it.

     

    cura_seam.thumb.jpeg.bd763a0198ebdb92631903813e83d954.jpeg

     

    The object in question is in Thingiverse with name tumstock, link https://www.thingiverse.com/thing:6322311

     

    Any hint?

    You could try using @burtoogle's branch to see if that works for you, all I know how to work with is regular Cura though.

     

    In regular Cura:

    On this model I think it's impossible to avoid it being near the edges because AFAIK you can't make it put a Z seam in the middle of a linear print move, and since the base consists exclusively of rectangles, that means the corners are the only place they can go. You could set Walls > Z Seam Alignment to Random to spread the any imperfections all around, but then you have four slightly messy corners as opposed to one corner with a Z seam.

     

    I wouldn't worry about it though - a Z seam on a hard corner is pretty hard to see unless your settings are way off where they should be (in which case the seam running up the model is going to be a real problem.

     

    If you use an alignment which will place the whole seam in one corner though, it'll be consistent:

    image.thumb.png.99bfb1011d98023d27f056ad74edc0dc.png

    (That's with Alignment = User Specified, Position = Back, Z Seam X = 100 (slightly less than halfway across my 220x220 bed), Corner preference = Hide Seam.)

    Edited by Slashee_the_Cow
  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds

    It would be really good if this was integral to the official Cura releases, sometimes I can't get my z seam where I want it 

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    56 minutes ago, PartySausage said:

    It would be really good if this was integral to the official Cura releases, sometimes I can't get my z seam where I want it 

    The feature request form is here, just search to see if there's an existing request first which you can +1 because it's annoying for developers to have to find the existing one and mark yours as a duplicate because I'd be very surprised if you were the first person who'd like to see this integrated into mainline Cura.

    • Like 1
    Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    13 hours ago, Slashee_the_Cow said:

    I wouldn't worry about it though - a Z seam on a hard corner is pretty hard to see unless your settings are way off where they should be (in which case the seam running up the model is going to be a real problem.

    Thank you very much for your supporting answer!

     

    The problem behind this case comes from a combination of PETG filament and overhangs. PETG does not like fan cooling and because of its elasticity the overhanging corner drags up with the seam when the Z lifts. This leads to noticeable imperfections and a higher risk of having the nozzle knocking off the object.

  • Link to post
    Share on other sites

    Posted · Testers required for "exact" z-seam positioning in Cura development builds
    8 hours ago, Tamadite said:

    The problem behind this case comes from a combination of PETG filament and overhangs. PETG does not like fan cooling and because of its elasticity the overhanging corner drags up with the seam when the Z lifts. This leads to noticeable imperfections and a higher risk of having the nozzle knocking off the object.

    I always run PETG with the fan at 100% (although effectiveness can depend on printer). It's a stringy material (It's hard to say that with a straight face when you've printed as much TPU as I have) and the faster it sets (by cooling) the less likely it is to travel off with the head instead of staying put.

     

    If you're printing PETG remember that it doesn't print as fast as PLA (I usually run it at about 40mm/s) and if you have one of the speed demon printers you can get these days (like my Ender-3 V3 SE which can accelerate at up to 4000mm/s²) it's worth lowering the acceleration rate, including the travel rate. I've seen my printer yank parts of PLA with it as it's gone zooming off on a travel move and end up stretching the model in that area.

  • 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...