# Exemples de pavages par symétrie centrale

mproof

Voici le code :

input geometriesyr16.mp ;
input dlf_tex.mp;

%------------------------------------------------------------------------
% pavage 1
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

path tri;

tri:=O--B--C--cycle ;
fill tri withcolor orange;
figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%------------------------------------------------------------------------
% pavage 2
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

path tri;

tri:=A--B--C--cycle ;
fill tri withcolor orange;
figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%------------------------------------------------------------------------
% pavage 3
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

trace (u,0)--(u,0.5u)--(1.5u,0.5u)--(1.5u,1.5u)--(u,1.5u)--(u,2u) withcolor orange withpen pencircle scaled 3bp;
trace (2u,u)--(0,u) withcolor orange withpen pencircle scaled 3bp;
figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%------------------------------------------------------------------------
% pavage 4
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

path tri;

tri:=A--B--C--(1.5u,0.5u)--cycle ;
fill tri withcolor orange;

figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%------------------------------------------------------------------------
% pavage 5
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

path tri;

tri:=A--(0.5u,0)--(0.5u,0.5u)--(0,0.5u)--cycle ;
fill tri withcolor orange;
tri:=C--(1.5u,2u)--(1.5u,1.5u)--(2u,1.5u)--cycle ;
fill tri withcolor orange;
%trace (0.5u,0.5u)--(1.5u,1.5u) withcolor orange withpen pencircle scaled 3bp;

figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%------------------------------------------------------------------------
% pavage 6
%------------------------------------------------------------------------

u:=1cm;
figure (-8u,-8u,20u,20u);
pair A,B,C,D,O;

A:=(0,0);
B:=(2u,0);
D:=(0,2u);
C:= D shifted(B-A);
O:= 0.5[A,C];

picture figd,figi,fig;
currentpicture:=nullpicture;

trace (0.5u,0)--(0.5u,1.5u)--(u,1.5u) withcolor orange withpen pencircle scaled 3bp;
trace (0,u)--(0.5u,u) withcolor orange withpen pencircle scaled 3bp;
trace (1.5u,u)--(2u,u) withcolor orange withpen pencircle scaled 3bp;
trace (u,0.5u)--(1.5u,0.5u)--(1.5u,2u) withcolor orange withpen pencircle scaled 3bp;

figd:=currentpicture;

figi:=figd rotatedaround (O,180);

for i:=0 upto 6:
for j:=0 upto 6:
fig :=figd shifted (i*4u,j*4u);
draw fig;% withcolor green;
fig :=figd shifted (i*4u+2u,j*4u+2u);
draw fig;% withcolor green;
fig :=figi shifted (i*4u+2u,j*4u);
draw fig;% withcolor orange;
fig :=figi shifted (i*4u,j*4u+2u);
draw fig;% withcolor orange;
endfor;
endfor;

marque_p:="croix";
nomme.urt(O);

draw A--B--C--D--cycle;

fin;
%-----------------------------------------------------------------------

%-----------------------------------------------------------------------
end ;