\begin{texgraph}[name=preambule,preload="drawFunction.mod"]
FrenchBabel:=1,
initData(
"E", //nom ensemble départ
["e_1", "e_2", "e_3", "e_4"], //liste des éléments de E
[Color:=blue,FillStyle:=gradient,FillColorB:=seagreen], //options dessin E
"F", //nom ensemble arrivée
["f_1","f_2","f_3","f_4","f_5"], //liste des éléments de F
[Color:=blue,FillStyle:=gradient,FillColorB:=pink], //options dessin F
[1,3, 2,1, 3,3, 4,2], //graphe
[arrowprm:=0.75],[],[arrowprm:=1.25],[arrowprm:=0.75]
),
draw("graph", //dessin du graphe
[Width:=8,Color:=red,graphsize:=12+8*i] //options globales
),
x:=(poselem(2,1)+poselem(2,3))/2,
setB("Im(f)",x,[labelsep:=0.2,Color:=gray,FillStyle:=bdiag,
StrokeOpacity:=0.5,FillColor:=lightgray,scale:=0.3])
\end{texgraph}
[
FrenchBabel:=1, //si babel est utilisé
initData(
"E", //nom ensemble départ
["e_1", "e_2", "e_3", "e_4"], //liste des éléments de E
[Color:=blue,FillStyle:=gradient,FillColorB:=seagreen], //options dessin E
"F", //nom ensemble arrivée
["f_1","f_2","f_3","f_4","f_5"], //liste des éléments de F
[Color:=blue,FillStyle:=gradient,FillColorB:=pink], //options dessin F
[1,3, 2,1, 3,3, 4,2], //graphe
[arrowprm:=0.75],[],[arrowprm:=1.25],[arrowprm:=0.75]
),
draw("graph", //dessin du graphe
[Width:=8,Color:=red,graphsize:=12+8*i] //options globales
),
x:=(poselem(2,1)+poselem(2,3))/2,
setB("Im(f)",x,[labelsep:=0.2,Color:=gray,FillStyle:=bdiag,
StrokeOpacity:=0.5,FillColor:=lightgray,scale:=0.3])
]
[
Width:=6,
Droite(-4*i,-4*i+1),
Arrows:=1, LabelSize:=normalsize,
LabelSeg(3.5+i,3.5-2*i,"$f$", rotation:=0),
Label(-4.2-3.75*i,"$Y$",-4.2+3.75*i,"$X$"),
C:=Get(Mcourbe1),
A:=1+i,
A1:=-0.2+i,
A2:=-1.5+i,
A3:=-3+i,
A4:=2.5+i,
B:=Intersec(Droite(-4*i,-4*i+1),Droite(A,A+i)),
D:=Intersec(Mcourbe1,Droite(A1,A1+i)),
D1:=Intersec(Droite(-4*i,-4*i+1),Droite(A1,A1+i)),
F:=Intersec(Mcourbe1,Droite(A2,A2+i)),G:=Intersec(Mcourbe3,Droite(A2,A2+i)),
F1:=Intersec(Droite(-4*i,-4*i+1),Droite(A2,A2+i)),
H:=Intersec(Mcourbe1,Droite(A3,A3+i)),
H1:=Intersec(Droite(-4*i,-4*i+1),Droite(A3,A3+i)),
I1:=Intersec(Droite(-4*i,-4*i+1),Droite(A4,A4+i)),
Arrows:=0,
// pour la zone hachurée, clipping
SaveWin(), view(Re(F1),Re(D1),-5,5),
FillStyle:=bdiag, FillColor:=black,
Ligne(C,1), FillStyle:=none, Color:=black,
RestoreWin(),
//retour au dessin
Seg(D[1],D[2]), Seg(F[1],G[1]), Seg(F[2],G[2]), Seg(H[1],H[2]),
LineStyle:=dashed, Width:=4, Seg(A,B),
Seg(D1,D[2]), Seg(F1,F[2]), Seg(H1,H[1]), Ddroite(I1,A4),
DotStyle:=times, DotSize:=3*(1+i),
LabelDot(A,"$x$","N",1), LabelDot(B,"$f(x)$","S",1),
LabelDot(D1,"$y_{0}$","S",1), LabelDot(F1,"$y_{1}$","S",1),
LabelDot(H1,"$y_{2}$","S",1), LabelDot(I1,"$y_{3}$","S",1)
]
[
Width:=6,
Droite(-2*i,-2*i+1),
Arrows:=1, LabelSize:=footnotesize,
LabelSeg(4.5+i,4.5-i,"$f$",rotation:=0),
Label(-4.3-1.75*i,"$Y$",-3.5+2.5*i,"$A_{1}$",3.6+2.5*i,"$A_{2}$"),
A0:=Get(Mcourbe1), L0:=Get(Mcourbe2),
A:=min(A0),B:=max(A0),
L:=min(L0),M:=max(L0),
C:=Intersec(Droite(-2*i,-2*i+1),Droite(A,A+i)),
D:=Intersec(Droite(-2*i,-2*i+1),Droite(B,B+i)),
N:=Intersec(Droite(-2*i,-2*i+1),Droite(L,L+i)),
P:=Intersec(Droite(-2*i,-2*i+1),Droite(M,M+i)),
Arrows:=0,
LineStyle:=dashed, Width:=4,
Seg(A,C-i), Seg(B,D-i), Seg(L,N-1.5*i), Seg(M,P-1.5*i),
//modifications
S:=A0 InterL L0, // points d'intersection pour découper A0 et L0
D1:= [(A0 CutB S[1]) CutA S[2], (L0 CutB S[2]) CutA S[1]], //morceau du haut
D2:= [(A0 CutB S[3]) CutA S[4], (L0 CutB S[4]) CutA S[3]],//morceau du bas
U:=min(D1), V:=max(D2), Ddroite(U,U-i),Ddroite(V,V-i), //traits verticaux
FillStyle:=bdiag, FillColor:=black, LineStyle:=noline,
Line([D1,jump,D2],1)
]
Revenir vers Propositions - Discussions
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 11 invités