input latexmp; setupLaTeXMP(class="article",options="12pt",fontencoding="T1",inputencoding="latin1",language="frenchb",packages="fourier,textpathmp"); input textpath; prologues:=2; input geometriesyr16; figure(-10u,-10u,15u,15u); pair A,O,P[],Q[],M[],N[]; A=(0,0); path cc; cc=cercles(A,5u); O-A=u*(3,2); for k=0 step 1 until 360: P[k]=pointarc(cc,k); Q[k]=demidroite(iso(O,P[k]),O) intersectionpoint cc; M[k]=cercles(O,abs(P[k]-Q[k])) intersectionpoint demidroite(P[k],Q[k]); N[k]=symetrie(M[k],O); endfor; drawoptions(dashed evenly withcolor gris); trace cc; drawoptions(withcolor rouge); path ovaledebooth; ovaledebooth=N0 for k=1 upto 360: --N[k] endfor --cycle; trace ovaledebooth; drawoptions(withcolor bleu); trace textpath("\Large Ovale de Booth",ovaledebooth,0); fin; end