input latexmp;
setupLaTeXMP(class="article",options="12pt",fontencoding="T1",inputencoding="latin1",language="frenchb",packages="fourier,textpathmp");
input textpath;

prologues:=2;

input geometriesyr16;

figure(0,2u,10u,8u);
pair O,A,B[],P[],N[],M[];
O=u*(1,5);
A-O=u*(8,0);
path cc;
cc=cercles(O,A);
for k=0 upto 360:
  B[k]=pointarc(cc,k);
  P[k]=perpendiculaire(O,B[k],A) intersectionpoint droite(O,B[k]);
  N[k]=perpendiculaire(O,A,P[k]) intersectionpoint droite(O,A);
  M[k]=perpendiculaire(O,B[k],N[k]) intersectionpoint droite(O,B[k]);
endfor;
drawoptions(dashed evenly withcolor gris);
trace droite(O,A);
drawoptions(withcolor rouge);
path foliumsimple;
foliumsimple=M1
for k=2 upto 360:
  --M[k]
endfor;
trace foliumsimple;
drawoptions(withcolor bleu);
trace textpath("\Large Folium simple",reverse(foliumsimple),0.5);
fin;
end