AB=100; BC=125; CD=100; DA=125; alfa=$t*360; 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*BD*DA)); BDC=acos((pow(BD,2)+pow(CD,2)-pow(BC,2))/(2*BD*CD)); beta=acos((pow(BD,2)+pow(BC,2)-pow(CD,2))/(2*BD*BC)); alfa5=acos((pow(BC,2)+pow(CD,2)-pow(BD,2))/(2*BC*CD)); hoek2=-((alfa5-(180+ADB-BDC))); hoek1=-ADB-beta; color ("red") rotate ([0,0,alfa]) translate ([0,-1.5,0]) square ([AB,3]); translate ([0,-1.5,0]) square ([DA,3]); if (alfa>=0&&alfa<=180) { color ([0,1,0,1]) translate ([DA,0,0]) rotate ([0,0,180-ADB+BDC]) translate ([0,-1.5,0]) square ([CD,3]); // CD translate ([AB*cos(alfa),AB*sin(alfa),0]) rotate ([0,0,hoek1]) translate ([0,-1.5,0]) square ([BC,3]); // BC } else { color ([0,1,0,1]) translate ([DA,0,0]) rotate ([0,0,180+ADB-BDC]) translate ([0,-1.5,0]) square ([CD,3]); // CD translate ([AB*cos(alfa),AB*sin(alfa),0]) rotate ([0,0,hoek2]) translate ([0,-1.5,0]) square ([BC,3]); // BC };