by Zaggo, published
This avoids overhangs greater than 45Â° at the top of the hole, which are not (or at least not easily and clean) printable on FDM printers without support material.
The problem with teardrop holes is, that they need considerably more space. This can be a real problem, when the main object is limited in size for one reason or another.
Flat Teardrops solve this problem.
The solution is simple. Although overhangs > 45Â° are a problem in 3D printing, reasonably short bridges arenâ€™t!
So why not just cut off the dead space in the tip of a teardrop?
See pleasantsoftware.com/developer/3d/2011/11/29/flat-teardrop/ for more details.
Recent Commentsview all
Hexagonal/octagonal holes also seem like a more natural fit for the STL filetype, where even "circular" holes become many-sided polygons anyway! Depending on the model, I'm sure you'd see a significant reduction in file size.
It occurred to me at some point that the reason why holes in most things are circular is due to the manufacturing process, for example drilling. So it's kind of exciting that with 3D printers, we don't have that constraint, and in some cases other geometries will work better.
The flat teardrop i
s also a nice solution, though!
Truncated teardrops have been in use for a while, but I've switched to using polygonal holes, usually with 6 or 8 sides. The benefit of this is that I can easily calculate the polygon's diameter so that the incircle diameter matches the screw/rod that is supposed to fit inside. I multiply the diameter by 7/6 for hexagons and 13/12 for octagons. Rotated so that they have a flat on top, these avoid an overhang exceeding 45 degrees and center the incircle in the hole so that if a poorly calibrated printer makes drilling necessary, the drill will stay centered rather than moving the hole upward.
The module makes use of the resolution function of the Libs.scad library. If you add the flatteardrop module to this library (as I did on my computer), it just works. If you plan to use the flatteardrop module separately, you might want to comment out the line
or set $fn to a fixed value (e.g. 36).
You must be logged in to post a comment.