Hello @martincho, could you please provide the project file (File -> Save) and attach the .3mf file to this thread. thanks.
This model is good because it has some nice straight edges that extend from top to bottom so it's easy to get the z-seam to follow one of them. The "trick" is to turn off the seam corner preference option. That rarely (but sometimes actually does) gives you what you want. So go for the user specified z-seam hint. I think that using the z-seam relative option makes it easier to position the seam as the location you specify is now relative to the centre of the model and it doesn't matter where the model is on the buildplate. This image shows the location of the z-seam and it doesn't vary appreciably over the whole height of the model. It also shows the settings I used. Hope this helps.
Not that it matters...I just ran a quick test using Simplify3D on this part as well as the much larger real part I need to produce. I can't see an equivalent issue. I also printed the small test part and it came out perfect.
I would prefer to use Cura. Hopefully someone can figure out what I might be doing wrong.
1 minute ago, burtoogle said:This model is good because it has some nice straight edges that extend from top to bottom so it's easy to get the z-seam to follow one of them. The "trick" is to turn off the seam corner preference option. That rarely (but sometimes actually does) gives you what you want. So go for the user specified z-seam hint. I think that using the z-seam relative option makes it easier to position the seam as the location you specify is now relative to the centre of the model and it doesn't matter where the model is on the buildplate. This image shows the location of the z-seam and it doesn't vary appreciably over the whole height of the model. It also shows the settings I used. Hope this helps.
I'll try this. Thanks. The only issue I would have with this idea is that this small test part I created is a representative portion of a much larger (28 x 16 x 8 inches) highly faceted model. Regrettably I am not able to post that model.
I'll try what you suggest and then perhaps I'll create a slightly more complex model to see how the solution might translate, if at all.
Thanks again.
I just realised that you are using hide seam alignment which tries to position the seam on the most concave region of the model. But your model only has convex corners. So you need to use the expose seam option and then the seam will stick to the sharpest corner.
I have submitted a small mod to Cura (https://github.com/Ultimaker/CuraEngine/pull/1122)
that fixes the z-seam position in your example project. The problem is caused by the fact that the model has some vertices in the long edges that make the outline very slightly concave and you are using the hide seam option which looks to find the most concave corner. All the other corners are convex and so it was choosing the slightly concave corners.
6 hours ago, burtoogle said:I have submitted a small mod to Cura (https://github.com/Ultimaker/CuraEngine/pull/1122)
that fixes the z-seam position in your example project. The problem is caused by the fact that the model has some vertices in the long edges that make the outline very slightly concave and you are using the hide seam option which looks to find the most concave corner. All the other corners are convex and so it was choosing the slightly concave corners.
Thanks for doing this. That said, not sure I understand. The first question is: From what frame of reference? Inside the part or outside? And then, of course, there's the fact that the long edges are straight, which means they are not concave/convex, regardless of where we look at them from.
Just trying to understand. I am just starting to look at the internals of slicers. At first pass I thought that the seam point selection might have been influenced by infill kind or infill segment end points as they join the inner wall. That was easily debunked by simply eliminating the infill, which changed nothing.
Herea's the most important question though:
How do I know which approach will produce good parts?
I am printing very large parts. Some of them will take upwards of 50 hours print time. I need a way to know the slicer will not introduce these kinds of errors. This seam location issue produces horrible defects across hundreds of layers. Out of the roughly 900 layers of the part that triggered this investigation there might be 100 without visible zits due to seam issues. My only option right now is to use Simplify3D until I can trust Cura to deliver defect-free files. As I said before, I really want to use Cura (even though I own an S3D license), but I can't afford to waste a part to see if the slicer made a mistake.
Again, I'd appreciate any and all advise on this front. Thanks.
1 hour ago, martincho said:The first question is: From what frame of reference? Inside the part or outside? And then, of course, there's the fact that the long edges are straight, which means they are not concave/convex, regardless of where we look at them from.
Not sure what you mean by frame of reference but your model is providing the outside shape of the part.
Here's the model from your project. You can see it is made up of triangles. Cura (and most slicers I should think) work with models that are defined as triangles.
When the model is sliced into layers, the vertices of the outline polygon for each layer will be located at where the layer hits the edges of the triangles at that height. On those large flat sides, you will get vertices appearing on the diagonal lines (moving to/from the corner of the model as the height varies). The slicer tries to remove collinear vertices but due to numerical precision, arithmetic errors, etc. sometimes vertices remain. There is a setting (maximum deviation) that influences the removal of vertices.
2 hours ago, martincho said:How do I know which approach will produce good parts?
Good question. I don't really have a good answer other to say that having sliced your model you should go through the layers in the layer view to check that the z-seam hasn't ended up somewhere bad.
Personally, I use the user-defined z-seam hint nearly every time but my models are, generally, amenable to doing that.
Ah, I get it now, thanks. I was thinking about the sliced perimeter of the part (coplanar with the print bed). In that context, if you are inside the perimeter (think single layer tool-path) looking outward the corners look concave. If you are outside looking in, they are convex. That's what I meant by "frame of reference".
Now I realize these decision are likely made from the triangulated STL file representation of my SolidWorks models. In that context I can see flat faces, well, not necessarily being absolutely flat as far as the slicer is concerned. This also explains why the same part without taper has no issues. The introduction of taper changed the math.
What would be VERY helpful is for CURA to have various view options such that you could quickly inspect z-seam points without having to manually explore a thousand layers. It would be as simple as rendering a single black dot at the z-seam, perhaps with options for transparency of the tool-path graphic. With something like this it would be a very simple matter to turn it on and look to see if any dots exist where we might not want z-seams.
23 minutes ago, martincho said:What would be VERY helpful is for CURA to have various view options such that you could quickly inspect z-seam points without having to manually explore a thousand layers. It would be as simple as rendering a single black dot at the z-seam, perhaps with options for transparency of the tool-path graphic. With something like this it would be a very simple matter to turn it on and look to see if any dots exist where we might not want z-seams.
Indeed, this request or similar comes up regularly. The most recent request was https://github.com/Ultimaker/Cura/issues/6072.
22 hours ago, burtoogle said:
Indeed, this request or similar comes up regularly. The most recent request was https://github.com/Ultimaker/Cura/issues/6072.
What I got out of that request is that I might be able to cheat and make z-seams visible by enabling coast. I'll try it later and see what that might look like. Right now I need to get some work done. Simplify3D is delivering better results at the moment. I think I am going to stop messing with Cura and just get parts out the door. I can return to tuning Cura in about three or four days.
I guess my main comment with regards to this issue is that the last thing you want is for software to side-swipe you like this on a large print. Not only does it waste a ton of time printing, it launches someone into a potentially days-long research project until finally figuring out what might be going on. I've experienced this kind of thing over ten years ago when our CAM tool (used to generate gcode for machining) lied to us, which resulted in our vertical machining center plunging a 3/4 inch end-mill into a chunk of aluminum at 20,000 RPM. The sound of a 20 HP spindle churning aluminum like it was butter is something that will never leave my brain. Software bug.
ghostkeeper 105
This issue is the reason why the Seam Corner Preference option of "Smart Hiding" was built for Cura 4.2. Smart Hiding will prefer to hide the seam in an inner corner, but if no inner corner is available it'll at least try to put it not in a flat surface. It'll put it on an outer corner then.
22 minutes ago, ghostkeeper said:This issue is the reason why the Seam Corner Preference option of "Smart Hiding" was built for Cura 4.2. Smart Hiding will prefer to hide the seam in an inner corner, but if no inner corner is available it'll at least try to put it not in a flat surface. It'll put it on an outer corner then.
Except that smart hiding fails for this particular example.
Recommended Posts
martincho 0
I should add that the layer numbers for the start and end of the problem in the 0.4 mm case are double. In other words, the slicer does not start/end lines at corners between approximately layers 40 and 100.
Link to post
Share on other sites