Jump to content
Ultimaker Community of 3D Printing Experts
DaHai8

Cura needs a "Crap Alert" pop-up window :)

Recommended Posts

Cura knows, without having to click on 'X-Ray' mode, that the model has issues.

Cura also know that less than X% of the model actually touches the build plate - or that a majority of the model's 'base' is actually a fraction of a millimeter above the build plate. Because the skirt or brim actually passes under most of the model.

I think Cura can also tell of a model contains many connected surfaces that can adversely effect the print.

Give all this, and the regular flow of questions on this board relating to Odd Brim Placement, Supports for the Entire First Layer, Closing Holes, Infill Where There is Nothing, etc., would it be possible to pre-detect these issue and pop up a windows that says something like "Model is Possibly Crap, please check it for errors before slicing/printing" - Ok, maybe not exactly those words :p

But it would sure help preemptively catch a lot of repeating posts here where the STL file is, well, shall we say "Not valid".

Just a thought...

Share this post


Link to post
Share on other sites

Actually. all of this is surprisingly hard to detect.

I often explain how "stupid" a 3d printer is. It just does what it is being told, without knowing what the result should be. If something goes wrong, causing spaghetti, the printer just happily plods along because it does not know something is going wrong. Well, software is pretty much the same. It does what it is instructed to do, and does not know what the output should be. If the input is shit, the output is going to be shit, but knowing if the input is shit is hard.

Can checks be created, inspecting the quality of meshes? Sure, but it is not easy. Even something as evident as X-Ray, showing red areas where there is an issue, is hard to do somewhat reliably for a computer (we would quite literally have to check if any pixels end up being red by looking at each resulting pixel one at a time). The X-Ray view is purely a visualisation "trick" that is much easier to inspect for users than for computers.

Share this post


Link to post
Share on other sites

Well, a 3D printer could be made more intelligent, maybe just not for the same price.

I assume the x-ray view has some kind of drawing routine in which is decided to draw certain parts in red, right? This would have to be used as an output somehow to trigger a message as suggested by the OP.

Share this post


Link to post
Share on other sites

Well, a 3D printer could be made more intelligent, maybe just not for the same price.

Same with software.

I assume the x-ray view has some kind of drawing routine in which is decided to draw certain parts in red, right?

If you are asking if Cura has a list of faces to draw in red when in X-ray mode, then the answer is no. What happens is that Cura just tells the GPU to draw the scene according to a couple of specific rules, and at the end if drawing Cura literally does not know if has drawn any red pixels.

The rules for the GPU are a bit like this. Draw the scene how you normally would; for each pixel in the viewport shoot a ray into the scene, and see what object you hit. Except if you hit an object, just continue, untill you are all the way in the back. Once you are all the way in the back, if you have hit an uneven number of faces, make the pixel red, otherwise make it "purple-ish with a white sort-of X-ray vibe".

The GPU processes these pixels massively parallel (eg 256 pixels at the same time). The CPU cannot ask after each pixel "so, was it red?". All it could do is after all the pixels are drawn, download all the pixels from the GPU and then one by one check if they are red. This is "computationally expensive". And not all red shows up in all perspectives, so Cura would need to render a couple of perspectives until it can be sure there is no red. And at what resolution should this be done?

I am not trying to say "this is not possible, what a stupid idea, your suggestions are bad and you should feel bad" (far from it!), but I am trying to explain why things may not be as simple as they seem.

X-Ray is a neat visualisation trick. Displaying something is simply something entirely different than understanding its structure.

Share this post


Link to post
Share on other sites

Ah - what a pity. So I guess there is no reasonable possibility to get a feedback from the GPU if it has drawn "purple-ish with a white sort-of X-ray vibe" or not. So one would have to implement a control algorithm for the model then.

On the other hand one can just make oneself used to check the x-ray vision before print.

Share this post


Link to post
Share on other sites

Something Cura could also do is making "X-ray" more discoverable, or at least more self-explanatory why you would want to look at an "X-ray".

Thinking out loud, objects could display in X-ray mode for the first 10 seconds of being loaded. Or selected objects could be rendered in X-ray mode. But I think both of these solutions are too obtrusive. I have also thought about unifying "solid" and x-ray mode into a single view, and giving that view a panel with options like layerview has a panel. This panel could have an option to highlight (either) overhangs or internal mesh errors.

Share this post


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

    • Taking Advantage of DfAM
      This is a statement that’s often made about AM/3DP. I'll focus on the way DfAM can take advantage of some of the unique capabilities that AM and 3DP have to offer. I personally think that the use of AM/3DP for light-weighting is one of it’s most exciting possibilities and one that could play a key part in the sustainability of design and manufacturing in the future.
        • Like
      • 3 replies
×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!