Le code source ci-dessous dessine un rapporteur avec diverses options de positionnement et de couleur.
Mais il ne compile plus et renvoie un message d'erreur Ouvrir dans l'éditeur Overleaf
\documentclass[12pt,a4paper]{article} \usepackage[latin1,utf8]{inputenc} \usepackage[french]{babel} \usepackage[T1]{fontenc} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{lmodern} \usepackage{fourier} \usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry} \usepackage{tikz} \usetikzlibrary{patterns} \usepackage{tkz-euclide} \usetkzobj{all} \usepackage{xkeyval} \makeatletter %----------> \Rapporteur <---------- \definecolor{plastic}{cmyk}{0.17,0.00,0.00,0.02} \define@cmdkey [DES] {Rapporteur} {Inclinaison}{} \define@cmdkey [DES] {Rapporteur} {CouleurFond}{} \define@cmdkey [DES] {Rapporteur} {CouleurGraduationsDix}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsUn}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsCinq}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsDix}{} \define@cmdkey [DES] {Rapporteur} {CouleurZeroInterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurZeroExterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurCentQuatreVingtInterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurCentQuatreVingtExterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurQuatreVingtDix}{} \define@cmdkey [DES] {Rapporteur} {scale}{} \define@cmdkey [DES] {Rapporteur} {opacite}{} \presetkeys [DES] {Rapporteur} { Inclinaison = 0, CouleurFond = black!50!blue!20!, CouleurTraitsGraduationsUn = black!70!blue!50!, CouleurTraitsGraduationsCinq = black!70!blue!50!, CouleurGraduationsDix = black!70!blue!50!, CouleurTraitsGraduationsDix = black!70!blue!50!, CouleurZeroInterieur = black!70!blue!50!, CouleurZeroExterieur = black!70!blue!50!, CouleurCentQuatreVingtInterieur = black!70!blue!50!, CouleurCentQuatreVingtExterieur = black!70!blue!50!, CouleurQuatreVingtDix = black!70!blue!50!, scale=1, opacite = 0.5 }{} % \newcommand{\Rapporteur}[2][]{% \setkeys[DES]{Rapporteur}{#1} \begin{scope}[shift={(#2)},rotate=\cmdDES@Rapporteur@Inclinaison, scale=\cmdDES@Rapporteur@scale, transform shape] % Bords intérieur et extérieur du rapporteur \draw [fill=\cmdDES@Rapporteur@CouleurFond,even odd rule,semitransparent,rounded corners=3pt] (-160:5cm) -- (-20:5cm) arc (-20:200:5cm) -- cycle (-180:3.5cm) -- (2,0) arc(55:125:3.5cm) (2.5,0) -- (0:3.5cm) arc (0:180:3.5cm) -- cycle; % Dessin de la flèche du centre du rapporteur \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-3.5,0) -- (3.5,0); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](0,-0.4) -- (0,0.4); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-0.2,0.2) -- (0.2,-0.2); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-0.2,-0.2) -- (0.2,0.2); % Traits de graduation extérieures % Traits de graduations intérieures et extérieures multiples de 10 \foreach \i in {0,10,...,180} \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](\i: 4.7 cm) -- (\i: 5 cm) (\i: 3.8 cm) -- (\i: 3.5 cm); % Traits de graduations intérieures et extérieures multiples de 5 autres que 10 \foreach \i in {5,15,...,175} \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsCinq](\i: 4.75 cm) -- (\i: 5 cm) (\i: 3.75 cm) -- (\i: 3.5 cm); %black!70!blue!50! % Traits de graduations intérieures et extérieures degré en degré \foreach \i in {0,10,...,170} { \foreach \j in {1,2,3,4,6,7,8,9} \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsUn](\i + \j : {5-0.05*min(\j,10-\j)}) -- (\i + \j : 5 cm) (\i + \j : {3.5+0.05*min(\j,10-\j)}) -- (\i + \j: 3.5 cm); } % 0° intérieur droit - 180° extérieur droit \draw (0: 4.5cm) node[rotate=-90,color=\cmdDES@Rapporteur@CouleurCentQuatreVingtExterieur] {180} (0: 4cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurZeroInterieur] {0}; % Graduations chiffrées intérieures jusque 100° - extérieures jusque 80° \foreach \d in {10,20,...,80} \pgfmathtruncatemacro{\rang}{\d} \draw (\d:4 cm) node[rotate=\d - 90,color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\scriptsize] {\rang}; \foreach \d in {100,110,...,170} \pgfmathtruncatemacro{\rang}{\d} \draw (180 - \d:4.5 cm) node[rotate=90 - \d, color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\small] {\d}; % Graduation chiffrée 90° \draw (90: 4.25cm) node[color=\cmdDES@Rapporteur@CouleurQuatreVingtDix] {90}; % Trait de graduation 90° \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](90: 4.6 cm) -- (90:5cm) (90: 3.9 cm) -- (90:3.5cm) ; % Graduations chiffrées intérieures de 80° jusqu'à 10° - extérieures de 100° jusqu'à 170° \foreach \d in {100,110,...,170} \pgfmathtruncatemacro{\rang}{\d} \draw (\d:4 cm) node[rotate=\d - 90,color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\scriptsize] {\rang}; \foreach \d in {10,20,...,80} \pgfmathtruncatemacro{\rang}{\d} \draw (180 - \d:4.5 cm) node[rotate=90 - \d, color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\small] {\d}; % 0° extérieur gauche - 180° intérieur droit \draw (180: 4.5cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurZeroExterieur] {0} (180: 4cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurCentQuatreVingtInterieur] {180}; \end{scope} } \makeatother \begin{document} \section{Rapporteurs} \subsection{Par défaut} \begin{tikzpicture} \Rapporteur{0,0} \end{tikzpicture} \subsection{En couleur} \begin{tikzpicture} \draw (1,1)node[black]{$\times$}; \draw (1,1)node[black,above]{A(1;1)}; \Rapporteur[CouleurFond=gray, CouleurGraduationsDix=black, CouleurTraitsGraduationsUn=blue, CouleurTraitsGraduationsCinq=green, CouleurTraitsGraduationsDix=red, CouleurQuatreVingtDix=cyan, CouleurZeroExterieur=orange, CouleurCentQuatreVingtInterieur=yellow, CouleurZeroInterieur=brown, CouleurCentQuatreVingtExterieur=pink, scale=1.5, Inclinaison=30]{1,1} \end{tikzpicture} \end{document} |
Vous avez écrit Ouvrir dans l'éditeur Overleaf
\documentclass[12pt,a4paper]{article} \usepackage[latin1,utf8]{inputenc} \usepackage[french]{babel} \usepackage[T1]{fontenc} \usepackage{amsmath} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{lmodern} \usepackage{fourier} \usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry} \usepackage{tikz} \usetikzlibrary{patterns} \usepackage{tkz-euclide} \usetkzobj{all} \usepackage{xkeyval} \makeatletter %----------> \Rapporteur <---------- \definecolor{plastic}{cmyk}{0.17,0.00,0.00,0.02} \define@cmdkey [DES] {Rapporteur} {Inclinaison}{} \define@cmdkey [DES] {Rapporteur} {CouleurFond}{} \define@cmdkey [DES] {Rapporteur} {CouleurGraduationsDix}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsUn}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsCinq}{} \define@cmdkey [DES] {Rapporteur} {CouleurTraitsGraduationsDix}{} \define@cmdkey [DES] {Rapporteur} {CouleurZeroInterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurZeroExterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurCentQuatreVingtInterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurCentQuatreVingtExterieur}{} \define@cmdkey [DES] {Rapporteur} {CouleurQuatreVingtDix}{} \define@cmdkey [DES] {Rapporteur} {scale}{} \define@cmdkey [DES] {Rapporteur} {opacite}{} \presetkeys [DES] {Rapporteur} { Inclinaison = 0, CouleurFond = black!50!blue!20!, CouleurTraitsGraduationsUn = black!70!blue!50!, CouleurTraitsGraduationsCinq = black!70!blue!50!, CouleurGraduationsDix = black!70!blue!50!, CouleurTraitsGraduationsDix = black!70!blue!50!, CouleurZeroInterieur = black!70!blue!50!, CouleurZeroExterieur = black!70!blue!50!, CouleurCentQuatreVingtInterieur = black!70!blue!50!, CouleurCentQuatreVingtExterieur = black!70!blue!50!, CouleurQuatreVingtDix = black!70!blue!50!, scale=1, opacite = 0.5 }{} % \newcommand{\Rapporteur}[2][]{% \setkeys[DES]{Rapporteur}{#1} \begin{scope}[shift={(#2)},rotate=\cmdDES@Rapporteur@Inclinaison, scale=\cmdDES@Rapporteur@scale, transform shape] % Bords intérieur et extérieur du rapporteur \draw [fill=\cmdDES@Rapporteur@CouleurFond,even odd rule,semitransparent,rounded corners=3pt] (-160:5cm) -- (-20:5cm) arc (-20:200:5cm) -- cycle (-180:3.5cm) -- (2,0) arc(55:125:3.5cm) (2.5,0) -- (0:3.5cm) arc (0:180:3.5cm) -- cycle; % Dessin de la flèche du centre du rapporteur \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-3.5,0) -- (3.5,0); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](0,-0.4) -- (0,0.4); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-0.2,0.2) -- (0.2,-0.2); \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](-0.2,-0.2) -- (0.2,0.2); % Traits de graduation extérieures % Traits de graduations intérieures et extérieures multiples de 10 \foreach \i in {0,10,...,180}{ \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](\i: 4.7 cm) -- (\i: 5 cm) (\i: 3.8 cm) -- (\i: 3.5 cm); } % Traits de graduations intérieures et extérieures multiples de 5 autres que 10 \foreach \i in {5,15,...,175}{ \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsCinq](\i: 4.75 cm) -- (\i: 5 cm) (\i: 3.75 cm) -- (\i: 3.5 cm); } %black!70!blue!50! % Traits de graduations intérieures et extérieures degré en degré \foreach \i in {0,10,...,170} { \foreach \j in {1,2,3,4,6,7,8,9}{ \draw [color=\cmdDES@Rapporteur@CouleurTraitsGraduationsUn](\i + \j : {5-0.05*min(\j,10-\j)}) -- (\i + \j : 5 cm) (\i + \j : {3.5+0.05*min(\j,10-\j)}) -- (\i + \j: 3.5 cm); } } % 0° intérieur droit - 180° extérieur droit \draw (0: 4.5cm) node[rotate=-90,color=\cmdDES@Rapporteur@CouleurCentQuatreVingtExterieur] {180} (0: 4cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurZeroInterieur] {0}; % Graduations chiffrées intérieures jusque 100° - extérieures jusque 80° \foreach \d in {10,20,...,80}{ \pgfmathtruncatemacro{\rang}{\d} \draw (\d:4 cm) node[rotate=\d - 90,color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\scriptsize] {\rang}; } \foreach \d in {100,110,...,170}{ \pgfmathtruncatemacro{\rang}{\d} \draw (180 - \d:4.5 cm) node[rotate=90 - \d, color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\small] {\d}; } % Graduation chiffrée 90° \draw (90: 4.25cm) node[color=\cmdDES@Rapporteur@CouleurQuatreVingtDix] {90}; % Trait de graduation 90° \draw [very thick,color=\cmdDES@Rapporteur@CouleurTraitsGraduationsDix](90: 4.6 cm) -- (90:5cm) (90: 3.9 cm) -- (90:3.5cm) ; % Graduations chiffrées intérieures de 80° jusqu'à 10° - extérieures de 100° jusqu'à 170° \foreach \d in {100,110,...,170}{ \pgfmathtruncatemacro{\rang}{\d} \draw (\d:4 cm) node[rotate=\d - 90,color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\scriptsize] {\rang}; } \foreach \d in {10,20,...,80}{ \pgfmathtruncatemacro{\rang}{\d} \draw (180 - \d:4.5 cm) node[rotate=90 - \d, color=\cmdDES@Rapporteur@CouleurGraduationsDix,font=\small] {\d}; } % 0° extérieur gauche - 180° intérieur droit \draw (180: 4.5cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurZeroExterieur] {0} (180: 4cm) node[rotate=90,color=\cmdDES@Rapporteur@CouleurCentQuatreVingtInterieur] {180}; \end{scope} } \makeatother \begin{document} \section{Rapporteurs} \subsection{Par défaut} \begin{tikzpicture} \Rapporteur{0,0} \end{tikzpicture} \subsection{En couleur} \begin{tikzpicture} \draw (1,1)node[black]{$\times$}; \draw (1,1)node[black,above]{A(1;1)}; \Rapporteur[CouleurFond=gray, CouleurGraduationsDix=black, CouleurTraitsGraduationsUn=blue, CouleurTraitsGraduationsCinq=green, CouleurTraitsGraduationsDix=red, CouleurQuatreVingtDix=cyan, CouleurZeroExterieur=orange, CouleurCentQuatreVingtInterieur=yellow, CouleurZeroInterieur=brown, CouleurCentQuatreVingtExterieur=pink, scale=1.5, Inclinaison=30]{1,1} \end{tikzpicture} \end{document} Publiée 07 Déc '19, 15:58 samcarter Exact et le code compile !!!
(07 Déc '19, 16:27)
pdesmons
|