$fn = 100; Bauchpunkte = [ for (i = [0: 10]) [10 + 0.01 * i*i,-1.2*i], for (i = [10: -1: 0]) [12 - 0.01 * i*i,-24+1.2*i], [0,-24], [0,0] ]; Ohrpunkte = [ [0,2],[8,5],[0,5] ]; rotate_extrude(angle = 360){ intersection() { square(10); circle(r = 10); }; polygon( points = Bauchpunkte ); translate([9,-24,0]) intersection() { translate([0,-3,0]) square(3); circle(r = 3); }; translate([0,-27,0]) square([9,3]); }; intersection() { translate([18,0,0]) intersection_for(i = [0:1]) rotate([0,90+15*i,0]) translate([0,0,-13]) cylinder(13,8+3*i,0); translate([0,-10,-10]) cube([16,20,20]); } intersection() { translate([15,0,0]) sphere(r = 1.75); translate([18,0,0]) rotate([0,105,0]) translate([0,0,-13]) cylinder(13,11,0); } for(i=[-1:2:1]) translate([7,6*i,3]) { sphere(r = 3); intersection() { sphere(r = 3.5); rotate([-20*i,-30,0]) translate([-10,-10,0]) cube(20); } } for(i=[0:180:180]) translate([0,0,8]) rotate([0,-90,i]) union() { linear_extrude(2, center=true) { hull() { polygon(points = Ohrpunkte); translate([6.5,6.5]) circle(4); } } } for(i=[-1:2:1]) translate([20,7*i,-26]) rotate([0,0,5*i]) union() { hull() { for(j=[-1:2:1]) translate([-20,j*1.5,0]) rotate([0,90,0]) cylinder(h = 20, r = 1); translate([-20,0,3.5]) rotate([00,95,0]) { cylinder(h=20, r=2); translate([0,0,20]) scale([1,1,1/2]) sphere(r=2); } } hull() for(j=[-1:2:1]) for(k=[0:1]) translate([0,j*(1.5-0.5*k),5*k]) sphere(r=1); } for(i=[-1:2:1]) translate([23,i*10,-13]) rotate([90 - 5*i,200,0]) { rotate_extrude(angle = 35) translate([25,0,0]) circle(r=2.5); translate([25,0,0]) sphere(r = 2.5); rotate([0,0,35]) translate([25,0,0]) sphere(r = 2.5); }