AB=100; BC=43; CD=123; DA=72; alfa_g1=acos((pow(AB,2)+pow(DA,2)-pow((CD-BC),2))/(2*AB*DA)); alfa_g2=acos((pow(AB,2)+pow(DA,2)-pow((CD+BC),2))/(2*AB*DA)); inverse=1; switch=1; // waarde 0 of 1 for (alfa=[alfa_g1:2:alfa_g2]) { if (switch==1) { color ("red") rotate ([0,0,alfa]) translate ([0,-0.1,0]) square ([AB,0.2]); translate ([0,-0.1,0]) square ([DA,0.2]); }; BD=sqrt(pow(AB,2)+pow(DA,2)-2*AB*DA*cos(alfa)); ADB=acos((pow(DA,2)+pow(BD,2)-pow(AB,2))/(2*DA*BD)); BDC=acos((pow(BD,2)+pow(CD,2)-pow(BC,2))/(2*BD*CD)); BCD=acos((pow(BC,2)+pow(CD,2)-pow(BD,2))/(2*BC*CD)); if (switch==1) { color ([0,1,0,1]) translate ([DA,0,0]) rotate ([0,0,180-ADB-inverse*BDC]) translate ([0,-0.1,0]) square ([CD,0.2]); }; translate ([AB*cos(alfa),AB*sin(alfa),0]) rotate ([0,0,180-ADB-inverse*(BDC+BCD)]) { if (switch==1) { translate ([0,-0.1,0]) square ([BC,0.2]); }; for (i=[0,BC,2*BC]) { for (j=[0,-0.5*BC,-BC]) { translate ([i,j,0]) circle (1); }; }; }; };