source("http://macosa.dima.unige.it/r.R") BF=3; HF=3 ## Sottoprogramma che dati B,C,D ed E (in gradi) traccia la figura e misura gli angoli FIGURA = function(B,C,D,E) { PIANOss(-1.5,1.5, -1.5,1.5) cerch(0,0, 1, "brown") P = c(B,C,D,E); for(i in 1:4) if(P[i]>180) P[i]=P[i]-360 xP=cos(P*gradi); yP=sin(P*gradi); d=1.25 text(xP[1]*d,yP[1]*d,"B"); text(xP[2]*d,yP[2]*d,"C") text(xP[3]*d,yP[3]*d,"D"); text(xP[4]*d,yP[4]*d,"E") m=1; n=4; r2p(xP[m],yP[m], xP[n],yP[n], "blue") m=2; n=3; r2p(xP[m],yP[m], xP[n],yP[n], "blue") for(i in 1:4) linea(0,0, xP[i],yP[i], "red") arco(0,0, 1/4, P[2],P[1], "brown") arco(0,0, 1/4, P[4],P[3], "brown") noStampa=1; retta_retta(xP[1],yP[1], xP[4],yP[4], xP[2],yP[2], xP[3],yP[3]) Q=soluzione Punto(xP,yP,"seagreen"); Punto(0,0,"seagreen"); Punto(Q[1],Q[2],"seagreen") a1=inclinazione(xP[1],yP[1], xP[4],yP[4]) a2=inclinazione(xP[2],yP[2], xP[3],yP[3]) arco(Q[1],Q[2], 1/4, a1,a2, "blue") cat("CQB =",a1-a2,"\n") cat("(COB-EOD)/2 =",((P[1]-P[2])-(P[3]-P[4]))/2,"\n") text(0.1,0.25,"O"); text(Q[1]+0.15,Q[2]+0.15,"Q") } # fine sottoprogramma ## esempio: B=30; C=280; D=150; E=120 FIGURA(B,C,D,E) ### CQB = 40 ### (COB-EOD)/2 = 40 # # verifica con altri punti