input latexmp;
setupLaTeXMP(class="article",options="12pt",fontencoding="T1",inputencoding="latin1",language="frenchb",packages="fourier,textpathmp");
input textpath;
prologues:=2;
input geometriesyr16;
figure(1.5u,-u,10.5u,17u);
pair O,A,N[],P[],M[];
O=u*(6,4);
A-O=u*(0,8);
path cc,cd,ce[];
cc=cercles(O,iso(O,A));
cd=cercles(A,iso(O,A));
for k=1 step 2 until 360:
N[k]=pointarc(cd,k);
ce[k]=cercles(iso(O,N[k]),O);
M[k]=parallele(O,A,N[k]) intersectionpoint perpendiculaire(O,N[k],cc intersectionpoint ce[k]);
endfor;
drawoptions(dashed evenly withcolor gris);
trace cc;
trace cd;
trace droite(O,A);
drawoptions(withcolor rouge);
path bicorne;
bicorne=M1
for k=3 step 2 until 360:
--M[k]
endfor
--cycle;
trace bicorne;
drawoptions(withcolor bleu);
trace textpath("\Large Bicorne",bicorne,0.55);
fin;
end