input geometrie2; prologues:=2; %% Choix de LaTeX verbatimtex %&latex \documentclass[a4paper]{article} \usepackage[latin1]{inputenc} \usepackage[frenchb]{babel} \begin{document} etex %%Points u=1cm; pair a[]; a0=u*(6,6);%label.llft(btex $B$ etex,a0); a1=u*(11,6);%label.lrt(btex $C$ etex,a1); a3=a0 rotatedabout(a1,-35); a2=per(a0,a3,a1,10) intersectionpoint demidroite(a1,a3,10);%label.top(btex $A$ etex,a2); a4=((a1 rotatedabout(a2,90))--a1) intersectionpoint ((a2 rotatedabout(a1,-90))--a2); a5=para(a4,a0,a1,10) intersectionpoint (a2--(a1 rotatedabout(a2,90))); a6=((a2 rotatedabout(a0,90))--a2) intersectionpoint ((a0 rotatedabout(a2,-90))--a0); a7=((a1 rotatedabout(a0,-90))--a1) intersectionpoint ((a0 rotatedabout(a1,90))--a0); beginfig(1); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; endfig; beginfig(2); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); endfig; beginfig(3); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw codeperp(a1,a0,a1 rotatedabout(a0,-90)); draw codeperp(a0,a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90)); draw codeperp(a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),a1); draw codesegments(a0,a1 rotatedabout(a0,-90),a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),1); draw codesegments(a0 rotatedabout(a1,90),a1,a1,a0,1); endfig; beginfig(4); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw codeperp(a1,a0,a1 rotatedabout(a0,-90)); draw codeperp(a0,a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90)); draw codeperp(a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),a1); draw codesegments(a0,a1 rotatedabout(a0,-90),a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),1); draw codesegments(a0 rotatedabout(a1,90),a1,a1,a0,1); draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw codeperp(a2,a1,a2 rotatedabout(a1,-90)); draw codeperp(a1,a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90)); draw codeperp(a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),a2); draw codesegments(a1,a2 rotatedabout(a1,-90),a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),3); draw codesegments(a1 rotatedabout(a2,90),a2,a2,a1,3); endfig; beginfig(5); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw codeperp(a1,a0,a1 rotatedabout(a0,-90)); draw codeperp(a0,a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90)); draw codeperp(a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),a1); draw codesegments(a0,a1 rotatedabout(a0,-90),a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),1); draw codesegments(a0 rotatedabout(a1,90),a1,a1,a0,1); draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw codeperp(a2,a1,a2 rotatedabout(a1,-90)); draw codeperp(a1,a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90)); draw codeperp(a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),a2); draw codesegments(a1,a2 rotatedabout(a1,-90),a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),3); draw codesegments(a1 rotatedabout(a2,90),a2,a2,a1,3); draw (a1 rotatedabout(a2,90))--a1 dashed evenly; draw (a2 rotatedabout(a1,-90))--a2 dashed evenly; endfig; vues=5; path coupe[]; coupe0=a5--symc(a5,a4); coupe1=(a5 rotatedabout(a4,-90))--(a5 rotatedabout(a4,90)); for vue=1 upto vues : beginfig(5+vue); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw codeperp(a1,a0,a1 rotatedabout(a0,-90)); draw codeperp(a0,a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90)); draw codeperp(a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),a1); draw codesegments(a0,a1 rotatedabout(a0,-90),a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),1); draw codesegments(a0 rotatedabout(a1,90),a1,a1,a0,1); draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw codeperp(a2,a1,a2 rotatedabout(a1,-90)); draw codeperp(a1,a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90)); draw codeperp(a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),a2); draw codesegments(a1,a2 rotatedabout(a1,-90),a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),3); draw codesegments(a1 rotatedabout(a2,90),a2,a2,a1,3); draw (a1 rotatedabout(a2,90))--a1 dashed evenly; draw (a2 rotatedabout(a1,-90))--a2 dashed evenly; draw a5--point((vue/vues)*length coupe0) of coupe0 dashed evenly; endfig; endfor for vue=1 upto vues : beginfig(10+vue); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw codeperp(a2,a0,a2 rotatedabout(a0,90)); draw codeperp(a0,a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90)); draw codeperp(a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),a2); draw codesegments(a0,a2 rotatedabout(a0,90),a2 rotatedabout(a0,90),a0 rotatedabout(a2,-90),2); draw codesegments(a0 rotatedabout(a2,-90),a2,a2,a0,2); draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw codeperp(a1,a0,a1 rotatedabout(a0,-90)); draw codeperp(a0,a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90)); draw codeperp(a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),a1); draw codesegments(a0,a1 rotatedabout(a0,-90),a1 rotatedabout(a0,-90),a0 rotatedabout(a1,90),1); draw codesegments(a0 rotatedabout(a1,90),a1,a1,a0,1); draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw codeperp(a2,a1,a2 rotatedabout(a1,-90)); draw codeperp(a1,a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90)); draw codeperp(a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),a2); draw codesegments(a1,a2 rotatedabout(a1,-90),a2 rotatedabout(a1,-90),a1 rotatedabout(a2,90),3); draw codesegments(a1 rotatedabout(a2,90),a2,a2,a1,3); draw (a1 rotatedabout(a2,90))--a1 dashed evenly; draw (a2 rotatedabout(a1,-90))--a2 dashed evenly; draw coupe0; draw (a5 rotatedabout(a4,-90))--(point((vue/vues)*length coupe1) of coupe1) dashed evenly; endfig; endfor picture piece[]; path pieces[]; currentpicture:=nullpicture; pieces1=a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2--cycle; fill pieces1 withcolor (red+blue); draw pieces1; piece1=currentpicture; currentpicture:=nullpicture; pieces2=a5--a4--(a5 rotatedabout(a4,-90))--(a1 rotatedabout(a2,90))--cycle; fill pieces2 withcolor (red+green); draw pieces2; piece2=currentpicture; currentpicture:=nullpicture; pieces3=a4--symc(a5,a4)--(a2 rotatedabout(a1,-90))--(a5 rotatedabout(a4,-90))--cycle; fill pieces3 withcolor (green+blue); draw pieces3; piece3=currentpicture; currentpicture:=nullpicture; pieces4=a1--symc(a5,a4)--a4--(a5 rotatedabout(a4,90))--cycle; fill pieces4 withcolor 0.75[red,green]; draw pieces4; piece4=currentpicture; currentpicture:=nullpicture; pieces5=a2--a5--a4--(a5 rotatedabout(a4,90))--cycle; fill pieces5 withcolor 0.25[red,blue]; draw pieces5; piece5=currentpicture; currentpicture:=nullpicture; beginfig(16); draw piece1; draw piece2; draw piece3; draw piece4; draw piece5; draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; for vue=1 upto vues: beginfig(16+vue); draw piece1; draw piece3; draw piece4; draw piece5; draw (piece2 shifted ((vue/vues)*(a1-a4))) rotatedabout(a1,(vue/vues)*90); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; endfor beginfig(22); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw piece3; draw piece4; draw piece5; draw piece1; draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; for vue=1 upto vues: beginfig(22+vue); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw piece4; draw piece5; draw piece1; draw (piece3 shifted ((vue/vues)*((a0 rotatedabout(a1,90))-a4))) rotatedabout(a0 rotatedabout(a1,90),(vue/vues)*90); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; endfor beginfig(28); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw piece4; draw piece5; draw piece1; draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; for vue=1 upto vues: beginfig(28+vue); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw piece5; draw piece1; draw (piece4 shifted ((vue/vues)*((a1 rotatedabout(a0,-90))-a4))) rotatedabout(a1 rotatedabout(a0,-90),(vue/vues)*90); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; endfor beginfig(34); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw (piece4 shifted ((a1 rotatedabout(a0,-90))-a4)) rotatedabout(a1 rotatedabout(a0,-90),90); draw piece5; draw piece1; draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; for vue=1 upto 5: beginfig(34+vue); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw (piece4 shifted ((a1 rotatedabout(a0,-90))-a4)) rotatedabout(a1 rotatedabout(a0,-90),90); draw piece1; draw (piece5 shifted ((vue/vues)*(a0-a4))) rotatedabout(a0,(vue/vues)*90); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; endfor beginfig(40); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw (piece4 shifted ((a1 rotatedabout(a0,-90))-a4)) rotatedabout(a1 rotatedabout(a0,-90),90); draw (piece5 shifted (a0-a4)) rotatedabout(a0,90); draw piece1; draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; for vue=1 upto vues: beginfig(40+vue); draw (piece2 shifted (a1-a4)) rotatedabout(a1,90); draw (piece3 shifted ((a0 rotatedabout(a1,90))-a4)) rotatedabout(a0 rotatedabout(a1,90),90); draw (piece4 shifted ((a1 rotatedabout(a0,-90))-a4)) rotatedabout(a1 rotatedabout(a0,-90),90); draw (piece5 shifted (a0-a4)) rotatedabout(a0,90); draw piece1 shifted ((vue/vues)*(a7-a6)); draw codeperp(a0,a2,a1); draw a0--a1--a2--cycle; draw a0--(a2 rotatedabout(a0,90))--(a0 rotatedabout(a2,-90))--a2; draw a0--(a1 rotatedabout(a0,-90))--(a0 rotatedabout(a1,90))--a1; draw a2--(a1 rotatedabout(a2,90))--(a2 rotatedabout(a1,-90))--a1; draw coupe0; draw coupe1; endfig; endfor end