I was intrigued that the polygon linear extruded in you IGewinde() module renders happily while its extrusion fails and I have investigated the issue a little further. The problem is in the way linear_extrude() generates its mesh with twist. The attached image of the twisted extrusion with thrown together shows self-intersections even for low values of the twist. The image corresponds to the code:
It has been reported here before that linear_extrude with twist makes a wrong choice for the quad triangulations: it chooses the longest diagonal. In the case of IGewinde(), that decision produces a self-intersection in the thin tips of the base polygon. If the shortest quad diagonal were taken instead, self-intersections would not happen. Note that the shortest diagonal is chosen in the inner surface of the ring. In fact, the same diagonal choice is done in the inner surface and the outer surface. It is a good choice (the shortest diagonal) for one surface and the worst (the longest) for the other. It is a bug in linear_extrude. Em sex., 17 de jan. de 2020 às 16:57, Projects around the FreeBASIC compiler <[hidden email]> escreveu:
_______________________________________________ OpenSCAD mailing list [hidden email] http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org ring.PNG (31K) Download Attachment |
Yes linear extrude with twist is known to create self intersections with thin walls unless slices is set. On Sat, 18 Jan 2020, 16:18 Ronaldo Persiano, <[hidden email]> wrote:
_______________________________________________ OpenSCAD mailing list [hidden email] http://lists.openscad.org/mailman/listinfo/discuss_lists.openscad.org |
Free forum by Nabble | Edit this page |