summaryrefslogtreecommitdiff
path: root/macros/latex/contrib/profcollege/latex/PfCRecyclage.tex
diff options
context:
space:
mode:
Diffstat (limited to 'macros/latex/contrib/profcollege/latex/PfCRecyclage.tex')
-rw-r--r--macros/latex/contrib/profcollege/latex/PfCRecyclage.tex360
1 files changed, 360 insertions, 0 deletions
diff --git a/macros/latex/contrib/profcollege/latex/PfCRecyclage.tex b/macros/latex/contrib/profcollege/latex/PfCRecyclage.tex
new file mode 100644
index 0000000000..371688f120
--- /dev/null
+++ b/macros/latex/contrib/profcollege/latex/PfCRecyclage.tex
@@ -0,0 +1,360 @@
+%%%
+% Logos Recyclage
+%%%
+\setKVdefault[Recyclage]{Ticket,Papier=false,Verre=false,Bouteille=false,Carton=false,Couleurs}%
+\defKV[Recyclage]{Couleur=\setKV[Recyclage]{Couleurs=false}}%
+
+\NewDocumentCommand\LogoRecyclage{o}{%
+ \useKVdefault[Recyclage]%
+ \setKV[Recyclage]{#1}%
+ \ifboolKV[Recyclage]{Papier}{%
+ \PfCLogoTriPapier%
+ }{%
+ \ifboolKV[Recyclage]{Carton}{%
+ \PfCLogoTriCarton%
+ }{%
+ \ifboolKV[Recyclage]{Verre}{%
+ \PfCLogoTriVerre%
+ }{%
+ \ifboolKV[Recyclage]{Bouteille}{%
+ \PfCLogoTriBouteille%
+ }{%
+ \PfCLogoTriTicket%
+ }%
+ }%
+ }%
+ }%
+}%
+
+\def\PfCLogoTriCodeBase{%
+ largeur=3;
+ rayon=0.5;
+ pair A,B,C,D,Mab,Mbc,Mcd,Mda,O,N[],T[];
+ A=(0,0);
+ B-A=u*(largeur,0);
+ C-B=u*(0,0.5*largeur);
+ D-C=A-B;
+ O=iso(A,B,C,D)+u*(rayon/2,0);
+ Mab-A=u*(rayon,0);
+ Mbc-C=u*(0,-rayon);
+ Mcd-C=u*(-rayon,0);
+ Mda-A=u*(0,rayon);
+ N1=2/5[D,C]+u*(rayon/2,-0.1);
+ N2-D=u*(0.1,-0.1);
+ N3-Mda=u*(0.1,0);
+ N4-Mab=u*(0,0.1);
+ N5=2/5[A,B]+u*(rayon/2,0.1);
+ path contourtri;
+ contourtri=D--Mda{dir-90}..{dir0}Mab--B--Mbc{dir90}..{dir180}Mcd--cycle;
+ path partieg;
+ partieg=O--N1--N2--N3{dir-90}..{dir0}N4--N5--cycle;
+ fill contourtri withcolor CouleurFond;
+ fill partieg withcolor white;
+ picture poubelle;
+ poubelle=image(
+ pair Q[],R[];
+ Q1=C+u*(-0.75rayon,-.75rayon);
+ Q2-Q1=u*(-0.25rayon,-1.75rayon);
+ Q3-Q2=u*(-0.85rayon,0);
+ Q4-Q3=u*(-0.25rayon,1.75rayon);
+ R1-Q1=u*(0.125rayon,0.1rayon);
+ R2-R1=u*(0.05rayon,0.2rayon);
+ R3-R2=u*(-0.15rayon,0);
+ R4-R3=u*(-0.15rayon,0.15rayon);
+ R8-Q4=u*(-0.125rayon,0.1rayon);
+ R7-R8=u*(-0.05rayon,0.2rayon);
+ R6-R7=u*(0.15rayon,0);
+ R5-R6=u*(0.15rayon,0.15rayon);
+ drawoptions(withpen pencircle scaled 1.25 withcolor black);
+ trace Q1--Q2--Q3--Q4;
+ trace R1--R2--R3--R4--R5--R6--R7--R8--cycle;
+ trace 1/5[R3,R6]--4/5[R3,R6];
+ drawoptions(withpen pencircle scaled 2.5 withcolor black);
+ trace (Q2+u*(0.1rayon,-0.1rayon))--(Q2+u*(0.1rayon,0.1rayon));
+ trace (Q3+u*(-0.1rayon,-0.1rayon))--(Q3+u*(-0.1rayon,0.1rayon));
+ drawoptions();
+ );
+ picture bacverre;
+ bacverre=image(%
+ pair S[];
+ S1=C+u*(-0.5rayon,-.35rayon);
+ S2-S1=u*(0,-0.45rayon);
+ S3-S2=u*(0,-1.25rayon);
+ S4-S3=u*(-0.45rayon,-0.45rayon);
+ S5-S4=u*(-0.875rayon,0);
+ S6-S5=u*(-0.45rayon,0.45rayon);
+ S7-S6=u*(0,1.25rayon);
+ S8-S7=u*(0.45rayon,0.45rayon);
+ S9-S8=u*(0.875rayon,0);
+ trace S2--S3{dir-90}..{dir180}S4--S5{dir180}..{dir90}S6--S7{dir90}..{dir0}S8--S9{dir0}..cycle;
+ trace (S4+u*(0.15rayon,-0.05rayon))--(S5+u*(-0.15rayon,-0.05rayon));
+ trace fullcircle scaled 1mm shifted (iso(S2,S7));
+ );
+}%
+
+\NewDocumentCommand\PfCLogoTriTicket{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ boolean Colore;
+ color CouleurFond;
+ Colore=\useKV[Recyclage]{Couleurs};
+ if Colore:
+ CouleurFond=(253/256,197/256,47/256);
+ else:
+ CouleurFond=\useKV[Recyclage]{Couleur};
+ fi;
+ \PfCLogoTriCodeBase;
+ picture journal;
+ journal=image(%
+% typetrace:="mainlevee";
+ label.top(TEX("\ttfamily\footnotesize TICKET"),iso(A,iso(A,B)+u*(rayon/2,0))+u*(0,rayon/4));
+ T1=A+u*(rayon,1.5rayon);
+ T2-T1=u*(rayon,-rayon/4);
+ T3-T2=u*(0.5rayon,1rayon);
+ T4-T3=T1-T2;
+ path ticket,lignesprix[];
+ ticket=T1--T2{dir60}..{dir90}T3--T4{dir-90}..{dir-150}T1--cycle;
+ draw ticket;
+ for k=2 upto 7:
+ lignesprix[k]=(point(3+k/10) of ticket)--((point(3+k/10) of ticket)+T2-T1);
+ if k<7:
+ draw subpath(0.1,0.5) of lignesprix[k];
+ fi;
+ draw subpath(0.6,0.8) of lignesprix[k];
+ endfor;
+ );
+ trace journal;
+ if Colore:
+ drawoptions(withcolor black);
+ else:
+ drawoptions(withcolor white);
+ fi;
+ trace poubelle;
+ label(TEX("\bfseries\scriptsize\begin{tabular}{c}BAC\\DE\\TRI\end{tabular}"),iso(Q1,Q2,Q3,Q4));
+ drawoptions();
+ \end{Geometrie}
+ \fi
+}%
+
+\NewDocumentCommand\PfCLogoTriBouteille{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ boolean Colore;
+ color CouleurFond;
+ Colore=\useKV[Recyclage]{Couleurs};
+ if Colore:
+ CouleurFond=(253/256,197/256,47/256);
+ else:
+ CouleurFond=\useKV[Recyclage]{Couleur};
+ fi;
+ \PfCLogoTriCodeBase;
+ picture bouteille;
+ bouteille=image(%
+ %typetrace:="mainlevee";
+ label.top(TEX("\ttfamily\footnotesize PLASTIQUE"),iso(A,iso(A,B)+u*(rayon/2,0))+u*(0,rayon/4));
+ T1=A+u*(1.25rayon,1.125rayon);
+ T2-T1=u*(0.75rayon,0);
+ T3-T2=u*(0,0.5rayon);
+ T4-T3=u*(0,0.5rayon);
+ T5-T4=u*(0,0.125rayon);
+ T6-T5=u*(-0.25rayon,0.25rayon);
+ T7-T6=u*(-0.125rayon,0);
+ T8-T7=u*(-0.25rayon,-0.25rayon);
+ T9-T8=u*(0,-0.125rayon);
+ T10-T9=u*(0,-0.5rayon);
+ T11-T10=u*(0,-0.5rayon);
+ path corps,bouchon,corpsg,lignesgrad[];
+ corps=T3{dir100}..{dir70}T4--T5{dir95}..{dir90}T6--T7{dir-90}..{dir-95}T8--T9{dir-70}..{dir-100}T10..{dir-50}T11{dir-10}..{dir10}T2{dir50}..cycle;
+ corpsg=T8--T9{dir-70}..{dir-100}T10..{dir-50}T11{dir-10};
+ bouchon=T6--(T6+u*(0.05rayon,0))--(T6+u*(0.05rayon,0.05rayon))--(T7+u*(-0.05rayon,0.05rayon))--(T7+u*(-0.05rayon,0))--cycle;
+ draw corps;
+ draw bouchon;
+ for k=1 upto 7:
+ lignesgrad[k]=(point(k*length corpsg/8) of corpsg){dir-10}..((point(k*length corpsg/8) of corpsg)+u*(0.125rayon,0));
+ if k<>6:
+ draw lignesgrad[k];
+ fi;
+ endfor;
+ );
+ trace bouteille;
+ if Colore:
+ drawoptions(withcolor black);
+ else:
+ drawoptions(withcolor white);
+ fi;
+ trace poubelle;
+ label(TEX("\bfseries\scriptsize\begin{tabular}{c}BAC\\DE\\TRI\end{tabular}"),iso(Q1,Q2,Q3,Q4));
+ drawoptions();
+ \end{Geometrie}
+ \fi
+}%
+
+\NewDocumentCommand\PfCLogoTriVerre{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ boolean Colore;
+ color CouleurFond;
+ Colore=\useKV[Recyclage]{Couleurs};
+ if Colore:
+ CouleurFond=(0,139/256,50/256);
+ else:
+ CouleurFond=\useKV[Recyclage]{Couleur};
+ fi;
+ \PfCLogoTriCodeBase;
+ picture bouteille;
+ bouteille=image(%
+ %typetrace:="mainlevee";
+ label.top(TEX("\ttfamily\footnotesize VERRE"),iso(A,iso(A,B)+u*(rayon/2,0))+u*(0,rayon/4));
+ T1=A+u*(1.25rayon,1.125rayon);
+ T2-T1=u*(0.75rayon,0);
+ T3-T2=u*(0,0.5rayon);
+ T4-T3=u*(0,0.5rayon);
+ T5-T4=u*(0,0.125rayon);
+ T6-T5=u*(-0.25rayon,0.25rayon);
+ T7-T6=u*(-0.125rayon,0);
+ T8-T7=u*(-0.25rayon,-0.25rayon);
+ T9-T8=u*(0,-0.125rayon);
+ T10-T9=u*(0,-0.5rayon);
+ T11-T10=u*(0,-0.5rayon);
+ path corps,bouchon,corpsg,lignesgrad[];
+ corps=T3{dir100}..{dir70}T4--T5{dir95}..{dir90}T6--T7{dir-90}..{dir-95}T8--T9{dir-70}..{dir-100}T10..{dir-50}T11{dir-10}..{dir10}T2{dir50}..cycle;
+ corpsg=T8--T9{dir-70}..{dir-100}T10..{dir-50}T11{dir-10};
+ bouchon=T6--(T6+u*(0.05rayon,0))--(T6+u*(0.05rayon,0.05rayon))--(T7+u*(-0.05rayon,0.05rayon))--(T7+u*(-0.05rayon,0))--cycle;
+ draw corps;
+ draw bouchon;
+ for k=1 upto 7:
+ lignesgrad[k]=(point(k*length corpsg/8) of corpsg){dir-10}..((point(k*length corpsg/8) of corpsg)+u*(0.125rayon,0));
+ if k<>6:
+ draw lignesgrad[k];
+ fi;
+ endfor;
+ );
+ trace bouteille;
+% if Colore:
+% drawoptions(withcolor black);
+% else:
+ drawoptions(withpen pencircle scaled 1.25 withcolor white);
+% fi;
+ trace bacverre;
+ label(TEX("\bfseries\scriptsize\begin{tabular}{c}TRI\\VERRE\end{tabular}"),iso(S3,S6)+u*(0,0.245rayon));
+ drawoptions();
+ \end{Geometrie}
+ \fi
+}%
+
+\NewDocumentCommand\PfCLogoTriCarton{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ boolean Colore;
+ color CouleurFond;
+ Colore=\useKV[Recyclage]{Couleurs};
+ if Colore:
+ CouleurFond=(253/256,197/256,47/256);
+ else:
+ CouleurFond=\useKV[Recyclage]{Couleur};
+ fi;
+ \PfCLogoTriCodeBase;
+ picture etui;
+ etui=image(%
+ %typetrace:="mainlevee";
+ label.top(TEX("\ttfamily\footnotesize CARTON"),iso(A,iso(A,B)+u*(rayon/2,0))+u*(0,rayon/4));
+ pair Tcarton[];
+ Tcarton1=A+u*(0.75rayon,1.75rayon);
+ Tcarton2-Tcarton1=u*(0,0.5rayon);
+ Tcarton3-Tcarton2=u*(0.5rayon,0.25rayon);
+ Tcarton4-Tcarton3=u*(1.25rayon,-0.5rayon);
+ Tcarton5-Tcarton4=Tcarton1-Tcarton2;
+ Tcarton6-Tcarton5=Tcarton2-Tcarton3;
+ Tcarton7-Tcarton6=Tcarton4-Tcarton5;
+ Tcarton8-Tcarton3=Tcarton5-Tcarton4;
+ path cotehaut,cotegauche,cotedroit,cotebas;
+ cotehaut=polygone(Tcarton4,Tcarton7,Tcarton7+u*(0.05rayon,0.35rayon),Tcarton4+u*(0.05rayon,0.35rayon));
+ cotebas=polygone(Tcarton5,Tcarton6,Tcarton6+u*(0.15rayon,-0.35rayon),Tcarton5+u*(0.15rayon,-0.35rayon));
+ cotegauche=polygone(Tcarton6,Tcarton7,Tcarton7+u*(-0.15rayon,-0.35rayon),Tcarton6+u*(-0.15rayon,-0.35rayon));
+ cotedroit=polygone(Tcarton4,Tcarton5,Tcarton5+u*(0.35rayon,-0.15rayon),Tcarton4+u*(0.35rayon,-0.15rayon));
+ trace polygone(Tcarton4,Tcarton5,Tcarton6,Tcarton7);
+ trace chemin(Tcarton7,Tcarton2,Tcarton3);
+ trace segment(Tcarton2,Tcarton1);
+ trace cotehaut; trace cotebas; trace cotegauche; trace cotedroit;
+ trace segment(Tcarton3,Tcarton4) cutafter segment(Tcarton7+u*(0.05rayon,0.35rayon),Tcarton4+u*(0.05rayon,0.35rayon));
+ trace segment(Tcarton1,Tcarton6) cutafter segment(Tcarton7+u*(-0.15rayon,-0.35rayon),Tcarton6+u*(-0.15rayon,-0.35rayon));
+ trace segment(Tcarton5,Tcarton8) cutafter segment(Tcarton7,Tcarton6);
+ );
+ trace etui;
+ if Colore:
+ drawoptions(withcolor black);
+ else:
+ drawoptions(withcolor white);
+ fi;
+ trace poubelle;
+ label(TEX("\bfseries\scriptsize\begin{tabular}{c}BAC\\DE\\TRI\end{tabular}"),iso(Q1,Q2,Q3,Q4));
+ drawoptions();
+ \end{Geometrie}
+ \fi
+}%
+
+\NewDocumentCommand\PfCLogoTriPapier{}{%
+ \ifluatex
+ \begin{Geometrie}[Cadre="aucun"]
+ boolean Colore;
+ color CouleurFond;
+ Colore=\useKV[Recyclage]{Couleurs};
+ if Colore:
+ CouleurFond=(253/256,197/256,47/256);
+ else:
+ CouleurFond=\useKV[Recyclage]{Couleur};
+ fi;
+ \PfCLogoTriCodeBase;
+ picture journal;
+ journal=image(%
+% typetrace:="mainlevee";
+ label.top(TEX("\ttfamily\footnotesize PAPIER"),iso(A,iso(A,B)+u*(rayon/2,0))+u*(0,rayon/4));
+ T1=A+u*(1.25rayon,rayon);
+ T2-T1=u*(0.5rayon,0.125rayon);
+ T3-T2=u*(0.5rayon,0);
+ T4-T3=u*(-0.125rayon,1.5rayon);
+ T5-T2=0.85*(T4-T3);
+ T6-T1=0.95*(T4-T3);
+ path ticket,lignesprix[];
+ ticket=T1--T2--T3--T4--T5--T6--cycle;
+ draw ticket;
+ trace T2--T5;
+ % lignes côté gauche
+ for k=1 upto 3:
+ lignesprix[k]=(point(5+k/12) of ticket)--((point(5+k/12) of ticket)+T5-T6);
+ draw subpath(0.1,0.5) of lignesprix[k];
+ endfor;
+ for k=5 upto 6:
+ lignesprix[k]=(point(5+k/12) of ticket)--((point(5.065+k/12) of ticket)+T2-T1);
+ draw subpath(0.1,0.9) of lignesprix[k];
+ endfor;
+ for k=9 upto 11:
+ lignesprix[k]=(point(5+k/12) of ticket)--((point(5+k/12) of ticket)+T2-T1);
+ draw subpath(0.5,0.9) of lignesprix[k];
+ endfor;
+ % lignes côté droit
+ for k=1 upto 3:
+ lignesprix[k]:=(point(2+k/12) of ticket)--((point(2+k/12) of ticket)+T2-T3);
+ draw subpath(0.1,0.5) of lignesprix[k];
+ endfor;
+ for k=5 upto 7:
+ lignesprix[k]:=(point(2+k/12) of ticket)--((point(1.935+k/12) of ticket)+T2-T3);
+ draw subpath(0.1,0.4) of lignesprix[k];
+ endfor;
+ for k=9 upto 11:
+ lignesprix[k]:=(point(2+k/12) of ticket)--((point(2+k/12) of ticket)+T5-T4);
+ draw subpath(0.2,0.8) of lignesprix[k];
+ endfor;
+ );
+ trace journal;
+ if Colore:
+ drawoptions(withcolor black);
+ else:
+ drawoptions(withcolor white);
+ fi;
+ trace poubelle;
+ label(TEX("\bfseries\scriptsize\begin{tabular}{c}BAC\\DE\\TRI\end{tabular}"),iso(Q1,Q2,Q3,Q4));
+ drawoptions();
+ \end{Geometrie}
+ \fi
+}% \ No newline at end of file