%@AUTEUR:Guillaume Connan
prologues:=2;

input courbes;
input geo;

color vert_e, turquoise, orange, vert_fonce, rose, vert_mer, bleu_ciel, or, rouge_v,bleu_m,bleu,bleu_f;
vert_e:=(0,0.790002,0.340007);
turquoise:=(0.250999,0.878399,0.815699);
orange:=(0.589999,0.269997,0.080004);
vert_fonce:=(0,1.4*0.392193,0);
rose:=(1.0, 0.752907, 0.796106);
bleu_ciel:=(1.2*0.529405,1.2*0.807794,1);%.2*0.921598);
or:=(1,0.843104,0);
rouge_v:=(0.829997,0.099994,0.119999);
bleu_m:=(0.7*0.529405,0.7*0.807794,0.7);%*0.921598);
bleu_f:=(0.211762,0.3231176,0.3686392);
bleu:=(0.529405,0.807794,1);

%TANGENTE qui tourne

% Déclarations des constantes %
numeric xmin, xmax, ymin, ymax, N;

ux:=1.3cm;
uy:=1.3cm;
xmin := -.5; xmax := 4.5;
ymin := -.5; ymax := 3;

% Définitions des axes et labels associés
vardef axes =
  drawarrow (ux*xmin,0) -- (ux*xmax,0); % axe des x
  drawarrow (0,uy*ymin) -- (0,uy*ymax); % axe des y
  label.lrt(btex $x$ etex,(xmax*ux,0)); % label de l'axe des x
  label.urt(btex $y$ etex,(0,ymax*uy)); % label de l'axe des y
enddef;


beginfig(1);
  axes; label.llft(btex $0$ etex,(-.1*ux,-.1*uy));

% Courbes
  path p,q;

  p:=(0,0){dir10}..(3.5*ux,3*uy); q:=(.2*ux,.5*uy)--(4.5*ux,1.5*uy);
  
  draw p withpen pencircle scaled 1.2bp withcolor bleu_m ; draw q withcolor green;
  
  label.rt(btex $\Gamma$ etex,(3.5*ux,3.2*uy));

% Point d'intersection
  
  pair A;
  
  A:=(p intersectionpoint q);
  
  draw A withpen pencircle scaled 3.5bp;
  
  label.ulft(btex A etex,A shifted (.1*ux,.1*uy)) ;
  

% Verticale
  
  pair B;
  
  B:=A yscaled0;
  
  draw A--B dashed evenly ;
  
  draw (B shifted (0,.1*uy))--(B shifted (0,-.1*uy)); label.bot(btex $a$ etex,B shifted (0,-.1*uy));

% Droites tournées

  draw q rotatedaround(A,9)withcolor green; draw q rotatedaround(A,18)withcolor green; draw q rotatedaround(A,27) withpen pencircle scaled 1.5bp withcolor vert_e;
  
% La flèche

  pair C; % point de départ de la flèche
  pair D; % point d'arrivée de la flèche
  
  C=(4.7*ux,1.7*uy); D=C rotatedaround(A,20);
  
  drawarrow C{dir(80+angle (C))}..{dir(100+angle (D))}D dashed evenly withpen pencircle scaled 1.5bp withcolor green;
  
endfig;
end