Section d’un cylindre couché

cylincouche

input geometriesyr16;
input dlf_tex.mp;

u:=1cm;

%----------------------------------- Définition du cadre
path cadre;
numeric xmin,xmax,ymin,ymax;
xmin:=-4u;
xmax:=15u;
ymin:=-6u;
ymax:=7u;

cadre:=(xmin,ymin)--(xmax,ymin)--(xmax,ymax)--(xmin,ymax)--cycle;


%---------------------------------- Définitions générales utilisées
%                                   sur toutes les figures

pair A,B,O,AA,BB,OO,I;

numeric rb;
rb:=2.5;     % rayon de base
pair V;
V:=(5u,3u);      % vecteur

O:=(0,0);
OO:= O shifted V;

numeric h;
h:=6;   %hauteur

pair W;
W:=(11u,-u);

pair T,TT;
T:=(3u,-4u);
TT:=(11u,-4u);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%beginfig(1)
figure (xmin,ymin,xmax,ymax);
path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;


%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;


label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;
fin;
%endfig;


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i:=-9 upto -1:
beginfig(i+11)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;

numeric cr,rr;
cr:=0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);
pair I,J,K,L;
I:=(-rr*u,cr*rb*u);
J:=(rr*u,cr*rb*u);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rr*u,0) shifted W;
J:=(rr*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;
endfor

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

beginfig(11)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;


pair I,J,K,L;
I:=(-rb*u,0);
J:=(rb*u,0);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rb*u,0) shifted W;
J:=(rb*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i:=1 upto 9:
beginfig(i+11)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;

numeric cr,rr;
cr:=0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);
pair I,J,K,L;
I:=(-rr*u,cr*rb*u);
J:=(rr*u,cr*rb*u);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rr*u,0) shifted W;
J:=(rr*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;
endfor

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
beginfig(21)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;


%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i:=1 upto 9:
beginfig(i+21)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;

numeric cr,rr;
cr:=1-0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);
pair I,J,K,L;
I:=(-rr*u,cr*rb*u);
J:=(rr*u,cr*rb*u);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rr*u,0) shifted W;
J:=(rr*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;
endfor

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

beginfig(31)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;


pair I,J,K,L;
I:=(-rb*u,0);
J:=(rb*u,0);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rb*u,0) shifted W;
J:=(rb*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
for i:=-9 upto -1:
beginfig(i+41)

path cc;
cc= cercles(O,rb*u);
draw cc;

path d;
d:=demidroite(O,OO);
I := d intersectionpoint cc;
A:= rotation(I,O,270);
AA:= A shifted V;

B= symetrie(A,O);
BB:= B shifted V;

trace arccercle(BB,AA,OO) dashed evenly;
trace arccercle(AA,BB,OO);

draw A--AA;
draw B--BB;
draw O--OO dashed evenly;

numeric cr,rr;
cr:=-1-0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);
pair I,J,K,L;
I:=(-rr*u,cr*rb*u);
J:=(rr*u,cr*rb*u);
K:=J shifted V;
L:=I shifted V;

path section;
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw I--J--K;
draw K--L--I dashed evenly;

%------- vue de dessus ;
pair E,F,G,H;
E:=(-rb*u,0) shifted W;
F:=(rb*u,0) shifted W;
G:= F shifted (0,h*u);
H:= E shifted (0,h*u);
draw E--F--G--H--cycle;
draw W--W shifted (0,h*u) dashed evenly;

I:=(-rr*u,0) shifted W;
J:=(rr*u,0) shifted W;
K:= J shifted (0,h*u);
L:= I shifted (0,h*u);
section := I--J--K--L--cycle;
fillcolor:=1.3orange;
transparence section;
draw section;

label(TEX("\uline{Vue en perspective}"),T);
label(TEX("\uline{Vue de dessus}"),TT);

draw cadre withcolor black withpen pencircle scaled 2pt;
clip currentpicture to cadre;

endfig;
endfor



end

Niveau supérieur : Animations avec Metapost