Ultimaker / Cura

3D printer / slicing GUI built on top of the Uranium framework
GNU Lesser General Public License v3.0
5.99k stars 2.05k forks source link

after slicing assembly simulation environment #7195

Open shimondoodkin opened 4 years ago

shimondoodkin commented 4 years ago

I'm always frustrated when I print and parts don't fit together.

maybe because slicing does some snapping to motion and filament thickness and over extrusion and melting and squishing of ironing

I want to have a simulator of melting with all the issues, and after that take multiple models and try to assemble them with mates or name joints to see if it fits.

maybe just export files to import them to 3d program and to try fit there,

here is some research paper that seems relevant: https://www.math.ucla.edu/~myding/papers/baking_paper_final.pdf

alternative: in the review screen to add a ruler, also it should be able to measure circles inside and external diameter of a circle.

alternative: export a 3d model of the simulated, what is already there in the review screen

Ghostkeeper commented 4 years ago

Simulations can be made of different qualities of the print, but I think a simulation that includes overextrusion and melting will be pretty hard to get. To model overextrusion, you'd need to model:

There are a lot of factors involved and most of them require intricate knowledge of your printer's structure, firmware, hardware and the environment you're printing in. These are less of an issue for baking cookies, like in that paper, since there is hardly any firmware present, the hardware is assumed to be an infinite flat plane, and the environment a perfectly equal room at baking temperature.

And if all of this knowledge is filled in by the user, it's still pretty hard to simulate the way that polymer chains melt, especially if they are suspended in stress by the stretch imposed by the print head before it solidified.

The two alternatives you provided are more viable though. The first one has been suggested here: https://github.com/Ultimaker/Cura/issues/2545

The second suggestion, to export the layer view data as STL, is implemented in a branch right now. We have tested that and found the result of simulating that to be worse than just simulating on the input model, since the layer view normally only attaches via infinitely thin edges to its adjacent lines. Between layers, if the contours are slightly offset from each other, they will not attach at all in the simulation and will just float away from each other.