$fn=128; wielbreedte=25; wieldia=300; velgdikte=1.5; naafdia=30; asdia=10; spaakdia=2; spaakaantal=20; rotate ([-90,0,0]) Riemschijf_Samengesteld (wielbreedte,wieldia,velgdikte,naafdia,asdia,spaakdia,spaakaantal); module Riemschijf_Samengesteld (wielbreedte,wieldia,velgdikte,naafdia,asdia,spaakdia,spaakaantal) { color ([0.6,0.63,0.7]) { // velg rotate_extrude (angle=360,convexity=10) translate ([wieldia/2,-wielbreedte/2,0]) square ([velgdikte,wielbreedte]); // klinkflenzen a/h eind van de spaken for (j=[-1,1]) translate ([0,0,j*4*spaakdia]) for (i=[0:1:spaakaantal-1]) rotate ([0,0,-3+(0.5+i)*(360/spaakaantal)]) rotate_extrude (angle=6,convexity=10) translate ([wieldia/2-1.5*velgdikte,-spaakdia,0]) square ([2*velgdikte,2*spaakdia]); // velgflenzen op de deelnaad for (i=[0,1]) rotate ([0,0,i*180]) { rotate ([0,0,-4]) rotate_extrude (angle=8,convexity=10) translate ([wieldia/2-2*velgdikte,-wielbreedte/2,0]) square ([2.5*velgdikte,wielbreedte]); translate ([wieldia/2-8*velgdikte,-1.5*velgdikte,-wielbreedte/2]) cube ([8*velgdikte,3*velgdikte,wielbreedte]); }; // naaf difference() { union() { translate ([0,0,-5*spaakdia]) cylinder (10*spaakdia,0.45*naafdia,0.45*naafdia); translate ([0,0,-8*spaakdia]) cylinder (16*spaakdia,0.35*naafdia,0.35*naafdia); for (i=[-6,2]) translate ([0,0,i*spaakdia]) cylinder (4*spaakdia,naafdia/2,naafdia/2); for (i=[-8,6]) for (j=[-0.1-1.5*spaakdia,0.1]) translate ([-naafdia/2+1,j,i*spaakdia]) cube ([naafdia-2,1.5*spaakdia,2*spaakdia]); // spaken for (j=[-1,1]) translate ([0,0,j*4*spaakdia]) for (i=[0:1:spaakaantal-1]) rotate ([0,0,(0.5+i)*(360/spaakaantal)]) rotate ([0,90,0]) cylinder (wieldia/2,spaakdia/2,spaakdia/2); }; // einde union // asboring translate ([0,0,-wielbreedte]) cylinder (2*wielbreedte,asdia/2,asdia/2); }; // einde difference }; // einde color color ("black") { // velgbouten en moeren for (j=[-1,1]) for (i=[-1,1]) { translate ([i*(wieldia/2-5.5*velgdikte),-2*spaakdia,j*4*spaakdia]) rotate ([-90,0,0]) { cylinder (4*spaakdia,spaakdia/2,spaakdia/2); translate ([0,0,3*spaakdia]) cylinder (spaakdia,spaakdia,spaakdia,$fn=6); cylinder (spaakdia,spaakdia,spaakdia,$fn=6);}; }; // einde 2x for // naafbouten en moeren for (j=[-1,1]) for (i=[-1,1]) { translate ([i*0.4*naafdia,2.5*spaakdia,j*7*spaakdia]) rotate ([90,0,0]) { cylinder (5*spaakdia,spaakdia/2,spaakdia/2); translate ([0,0,4*spaakdia]) cylinder (spaakdia,spaakdia,spaakdia,$fn=6); cylinder (spaakdia,spaakdia,spaakdia,$fn=6);}; }; // einde 2x for // balanceergewicht rotate ([0,0,36]) translate ([0,wieldia/2,0]) difference() { sphere (8); translate ([-10,0,-10]) cube (20); }; // einde difference }; // einde color black }; // einde module Riemschijf_Samengesteld