raggio=8; spessore=0.5; braccio=15; spessore_braccio=1; int_supporto=2; est_supporto=5; N_palette=3; // valori ammessi: paletta,supporto,tutto render="tutto"; module coppetta(){ difference(){ sphere(r = raggio, $fn=100); sphere(r = raggio-spessore, $fn=100); translate([-raggio,0,-raggio]){cube(size = raggio*2, center = false);} } } module asticella(braccio=braccio,spessore_braccio=spessore_braccio){ cube(size = [braccio,spessore_braccio,spessore_braccio], center = true); } module supporto(){ difference(){ cylinder(h=spessore_braccio*2,r=est_supporto,center=true); cylinder(h=spessore_braccio*2+1,r=int_supporto,center=true);} } if (render=="tutto"){ supporto(); for(i=[1:N_palette]){ rotate(a=i*360/N_palette, v=[0,0,1]) { translate([braccio+raggio-spessore+int_supporto,spessore_braccio/2,0]){coppetta();} translate([braccio/2+int_supporto,0,0]){asticella();} } } } if (render=="supporto"){ difference(){ supporto(); for(i=[1:N_palette]){ rotate(a=i*360/N_palette, v=[0,0,1]) { translate([braccio+raggio-spessore+int_supporto,spessore_braccio/2,0]){coppetta();} translate([braccio/2+int_supporto,0,0]){asticella(braccio,spessore_braccio+0.2);} } } } } if (render=="paletta"){ rotate(a=270,v=[1,0,0]){ translate([braccio+raggio-spessore+int_supporto,spessore_braccio/2,0]){coppetta();} translate([braccio/2+int_supporto,0,0]){asticella();} } }