Retour

Source : faisceau-cercles-2.mp

faisceau-cercles-2.mp
input geometrie2d;
 
faisceau-cercles-2.mp (figure 1)
beginfig(1);
 
    Fenetre(-6.5,-6.5,6.5,6.5);
 
    %% Faisceaux de cercles conjugués
    puissance = 0 ;% Les cercles vont être tangents !
    f = 2;
    n = 4;
    A = Point(0,0); 
    B = Point(0.4,0);
 
    x = Distance(A,B);
    for i = 1 upto n:
	C[i]   = Barycentre(A,B,f*i);
	C[i+n] = Barycentre(A,B,-f*i);
	ra[i]  = sqrt((f*i)**2-puissance);
 
	trace Cercle(C[i],ra[i]*x);
	trace Cercle(C[i+n],ra[i]*x);
    endfor;
 
    for i = 1 upto n:
	CO[i] 	= ptoPoint(_Point(C[i]) rotated 90);
	CO[i+n] = ptoPoint(_Point(C[i+n]) rotated 90);
 
	rb[i] = sqrt((f*i)**2+puissance);
	trace Cercle(CO[i],rb[i]*x);
	trace Cercle(CO[i+n],rb[i]*x);
    endfor;
 
    D = Droite(A,B);
    gTRD := 20;
    trace D
	withpen pencircle scaled 1.5 withcolor (0.5,0.8,0.1);
    trace (Lieu D) rotated 90
	withpen pencircle scaled 1.5 withcolor (0.5,0.8,0.1);
 
    % Les points de base du faisceau sécant (points limites de l'autre)
    gPR := 4;
    pointe sqrt(puissance) * _Point(B) withcolor red;
    pointe -sqrt(puissance) * _Point(B) withcolor red;
endfig;
end