Please help me to find why the attached program cannot finish rend (F5).
The biggest issue is that the } character at the end of line 33 belongs
on line 14 instead: you are needlessly creating 12 duplicates of the
rings that are rotated 90 degrees. Previous to this change, it failed to
render on my machine despite my waiting for over two hours; after this
change, it rendered in just over 11 minutes. Alternatively, you can just
delete the { and } characters on lines 13 and 33 respectively, producing
the same result.
Other fixes you should make:
The cylinders on lines 45 and 50 are tangent to the rings at a
point, creating manifold errors. Change the height from 5 to 6 to
embed them in the rings.
The for loop should run either from 0 to 330, or 30 to 360: the
iteration at i=360 duplicates the iteration at i=0.
Instead of using five individual rotations, all with the same
parameters (lines 16 through 33), group them and rotate once: wrap
lines 17-33 in { and }, and remove lines 19, 23, 27, and 31.
The half-ring that hangs the globe is better constructed with
rotate_extrude, rather than as a difference of two cylinders and a
cube, e.g.
rotate([0,0,-2.5])
translate([0,0,-4])
rotate_extrude(angle=185) translate([64,0]) square(8);
With these additional changes in place, I have the render time down to
around 5 minutes.
On 11/21/2021 8:20 AM, ymolcho12@yahoo.com wrote:
Please help me to find why the attached program cannot finish rend (F5).
Hello Mr. Miller,
Thank you very much. I learned a lot from you.
I did not know that rotate extrude has an angle parameter. It does not appear in the Cheat Sheet.
I made all the corrections on your advice.
Rendering time on my PC together with many other processes was 2.4 hours.
Thank you again.
Jaacov Molcho.