Section d’une boule

boule

input geometriesyr16;
input dlf_tex.mp;

u:=1cm;

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

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


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

 
numeric rb;
rb:=3.5;   %rayon de la boule

pair W;
W:=(8u,0);

pair A,B,O,T;

A=(-rb*u,0);
O=(0,0);
B=(rb*u,0);

T:=(0,-(rb+1)*u);

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
beginfig(1)

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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

endfig;



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

numeric cr,rr;
cr:=0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);

pair OO;
OO=(0,cr*rb*u);

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


cc := cercles(O,rr*u);
cc := cc yscaled 0.2;
cc := cc shifted (0,cr*rb*u);
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


fillcolor:=1.3orange;
transparence cc;


marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;
cc:=cercles(P,rr*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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;

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;
fillcolor:=1.3orange;
transparence cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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

endfig;





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


numeric cr,rr;
cr:=0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);

pair OO;
OO=(0,cr*rb*u);

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


cc := cercles(O,rr*u);
cc := cc yscaled 0.2;
cc := cc shifted (0,cr*rb*u);
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


fillcolor:=1.3orange;
transparence cc;


marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;
cc:=cercles(P,rr*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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;

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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


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

endfig;

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


numeric cr,rr;
cr:=1-0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);

pair OO;
OO=(0,cr*rb*u);

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


cc := cercles(O,rr*u);
cc := cc yscaled 0.2;
cc := cc shifted (0,cr*rb*u);
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


fillcolor:=1.3orange;
transparence cc;


marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;
cc:=cercles(P,rr*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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;

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;
fillcolor:=1.3orange;
transparence cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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

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

endfig;


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


numeric cr,rr;
cr:=-1-0.1*i;    %coefficient servant à placer OO
rr:=rb*sqrt(1-cr*cr);

pair OO;
OO=(0,cr*rb*u);

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


cc := cercles(O,rr*u);
cc := cc yscaled 0.2;
cc := cc shifted (0,cr*rb*u);
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;


fillcolor:=1.3orange;
transparence cc;


marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;
cc:=cercles(P,rr*u);
fillcolor:=1.3orange;
transparence cc;
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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


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

endfig;

endfor


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%%
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
beginfig(41)

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

cc := cc yscaled 0.2;
draw subpath (0, length cc /2) of cc dashed evenly;
draw subpath (length cc /2,length cc) of cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";


%------------Vue de dessus
pair P;
P:=O shifted W;
cc:=cercles(P,rb*u);
draw cc;

marque_p := "croix";
MarquePoint(O);
marque_p := "rien";

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


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

endfig;


end

Niveau supérieur : Animations avec Metapost