diff options
author | Karl Berry <karl@freefriends.org> | 2015-01-07 22:53:44 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2015-01-07 22:53:44 +0000 |
commit | e94db7b41f3d43082ad3849926c4b1f6dcf730fb (patch) | |
tree | 2200b2696556788a890749e58ed033473d02e96e /Master/texmf-dist/doc | |
parent | 26207e67d6c0715ef62fa3a051e47e44b357e686 (diff) |
tipfr (7jan15)
git-svn-id: svn://tug.org/texlive/trunk@35984 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc')
-rw-r--r-- | Master/texmf-dist/doc/latex/tipfr/README | 6 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.pdf | bin | 348994 -> 374432 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.tex | 114 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/tipfr/latex/tipfr.sty | 132 |
4 files changed, 219 insertions, 33 deletions
diff --git a/Master/texmf-dist/doc/latex/tipfr/README b/Master/texmf-dist/doc/latex/tipfr/README index d850be0d7da..00a6e91a580 100644 --- a/Master/texmf-dist/doc/latex/tipfr/README +++ b/Master/texmf-dist/doc/latex/tipfr/README @@ -3,11 +3,13 @@ Objectif ----- Cette extension utilise TikZ pour dessiner des touches de -calculatrice ainsi que la calculatrice entière. +calculatrice, des item de menus, le contenu d'écrans graphiques ainsi que une calculatrice en grand ou petit format. Licence ------- -LaTeX Project Public License +This program can be redistributed and/or modified under the terms +of the LaTeX Project Public License Distributed from CTAN archives +in directory macros/latex/base/lppl.txt. Documentation ------------- diff --git a/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.pdf b/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.pdf Binary files differindex 9117b280f2a..c725d633c8a 100644 --- a/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.pdf +++ b/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.pdf diff --git a/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.tex b/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.tex index 25eb9d4c89a..b1a6d8ae7ac 100644 --- a/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.tex +++ b/Master/texmf-dist/doc/latex/tipfr/doc/tipfr-doc.tex @@ -105,7 +105,7 @@ \Calculatrice[documentation] - \today, version 1.4\medskip + \today, version 1.5\medskip Philippe \bsc{De Sousa} (\href{mailto:philou.desousa@gmail.com}{philou.desousa@gmail.com}) \end{center} @@ -164,7 +164,7 @@ Crée un dessin de touche selon le style précisé. Les différentes valeurs son Hormis pour les touches spéciales, on constate que la valeur principale par défaut est $\sin$. De plus, la touche graphique nous montre un problème d'alignement. Des options ont donc été créées pour apporter une solution : \begin{docKey}{principal}{=\meta{text}}{valeur par défaut : \docValue{sin}} -Précise le \meta{text} à mettre à l'intérieur d'une touche. \Speciale*. Une fois encore on constate un problème de positionnement. +Précise le \meta{text} à mettre à l'intérieur d'une touche. \Speciale* sauf la touche spéciale \docValue{enter}. Une fois encore on constate un problème de positionnement. \end{docKey} \begin{dispExample*}{sidebyside} @@ -172,6 +172,7 @@ Précise le \meta{text} à mettre à l'intérieur d'une touche. \Speciale*. Une \Touche[style=number, principal=2] \Touche[style=operation, principal=$\times$] \Touche[style=graph,principal=$f(x)$] +\Touche[style=enter, principal={=}] \end{dispExample*} La commande \cs{Circonflexe} a été créée pour dessiner un grand accent circonflexe : \Circonflexe @@ -190,6 +191,9 @@ Permet d'ajuster la position du texte principal à l'intérieur de la touche. \S \Touche[style=graph,principal=$f(x)$] \Touche[style=graph,principal=$f(x)$, position = 0.9] + +\Touche[style=enter, principal={\large =}] +\Touche[style=enter, principal={\large =}, position = 0.35] \end{dispExample*} \begin{docKey}{raise}{=\meta{dim}}{valeur par défaut : \docValue{0ex}} @@ -203,7 +207,7 @@ Hauteurs non modifiées\par \Touche[style=number, principal=3] \Touche[style=operation, principal=$\times$] \Touche[style=function, principal={$x,t,\theta,n$}] -\Touche[style=enter] +\Touche[style=enter, principal=entrer] \end{dispExample*} \end{minipage}\hfill \begin{minipage}[t]{0.48\linewidth} @@ -213,7 +217,7 @@ Hauteurs modifiées\par \Touche[style=number, principal=3, raise=1.5ex] \Touche[style=operation, principal=$\times$, raise=2ex] \Touche[style=function, principal={$x,t,\theta,n$}, raise=2ex] -\Touche[style=enter, raise=0.5ex] +\Touche[style=enter, principal=entrer, raise=0.5ex] \end{dispExample*} \end{minipage} @@ -229,7 +233,7 @@ Hauteurs modifiées\par Les touches ne sont pas uniquement composées de leur fonction principale. Parfois, elles possèdent une fonction secondaire appelée à l'aide de la touche \Touche[style=second,raise=-1ex] et parfois même une fonction alphabétique appelée à l'aide de la touche \Touche[style=alpha,raise=-1ex]. \begin{docKey}{second}{=\meta{text}}{\sffamily fonction inactive par défaut} - \'Ecrit en bleu une fonction secondaire au dessus de la touche. Lorsque l'option \docAuxKey{second} est spécifié sans l'option \docAuxKey{alpha} alors le \meta{text} est centré au dessus de la touche. + \'Ecrit en bleu une fonction secondaire au dessus de la touche. Lorsque l'option \docAuxKey{second} est spécifié sans l'option \docAuxKey{alpha} alors le \meta{text} est centré au dessus de la touche. \Speciale* sauf la touche spéciale \docValue{enter}. \end{docKey} \begin{dispExample*}{sidebyside} @@ -237,13 +241,14 @@ Les touches ne sont pas uniquement composées de leur fonction principale. Parfo \end{dispExample*} \begin{docKey}{alpha}{=\meta{text}}{\sffamily fonction inactive par défaut} - \'Ecrit en vert une fonction alphabétique au dessus de la touche. Lorsque l'option \docAuxKey{alpha} est spécifié sans l'option \docAuxKey{second} alors rien n'est affiché. En effet, sur la calculatrice prise en modèle, il n'existe aucune touche possédant une fonction alphabétique sans avoir de fonction secondaire. + \'Ecrit en vert une fonction alphabétique au dessus de la touche. Lorsque l'option \docAuxKey{alpha} est spécifié sans l'option \docAuxKey{second} alors rien n'est affiché. En effet, sur la calculatrice prise en modèle, il n'existe aucune touche possédant une fonction alphabétique sans avoir de fonction secondaire. \Speciale* sauf la touche spéciale \docValue{enter}. \end{docKey} \begin{dispExample*}{sidebyside} \Touche[style=graph, principal=$f(x)$,second={gr.stats}, alpha=f1, position=0.95, fontsize=7pt]\quad \Touche[style=number, principal={7}, second={$u_n$}, alpha={O}]\quad \Touche[style=number, principal={7}, alpha={O}] +\Touche[style=enter,fontsize=7pt, principal=entrer, second=préc, alpha=résol] \end{dispExample*} L'option \docAuxKey{fontsize} est ici spécifiée afin de permettre au texte secondaire et au texte alphabétique de cohabiter et d'éviter une \textit{badbox}.\bigskip @@ -274,7 +279,7 @@ La commande \cs{Racine} a été créée pour dessiner une racine carré : \Racin \begin{dispExample*}{sidebyside} \Touche[principal={$x,t,\theta,n$}, second={échanger}, fontsize=7pt, position=0.8, circle=true] -\Touche[style=enter, circle=true, thickness=0.5pt, colour=blue, radius=25pt] +\Touche[style=enter,fontsize=7pt, principal=entrer, second=préc, alpha=résol, circle=true, thickness=0.5pt, colour=blue, radius=25pt] \end{dispExample*} \subsection{Touches flèches} @@ -658,6 +663,7 @@ cos(\x r)/-2*pi:1.5*pi \section{La calculatrice} +\subsection{Version grand format} \begin{docCommand}{Calculatrice}{\oarg{titre optionnel}} Cette commande permet d'afficher la calculatrice en entier. Chaque touche a été nommée individuellement pour pouvoir s'y référer. @@ -738,7 +744,7 @@ Le tableau ci-dessous montre le nom attribué à chacune des touches avec la com \Touche[style=number,principal={$\centerdot$},second={$i$},alpha={:}] & \Touche[style=number,principal={(--)},second={rép},alpha={?}] & \Touche[style=on] & - \Touche[style=enter,fontsize=7pt] & + \Touche[style=enter, fontsize=7pt, principal=entrer, second=préc, alpha=résol, name=ETR] & \Touche[style=arrows,scalearrows=0.5] &\\ \hline Nom & T9 & T0 & DOT & MS & ON & ETR & FLE &\\ @@ -793,6 +799,98 @@ Le tableau ci-dessous montre le nom attribué à chacune des touches avec la com \path[red] ($(MAT) + (-0.6,0.5)$) -- ($(STO) + (-0.6,-0.5)$) node[left,midway] {\textbf 1}; \end{dispListing} +\subsection{Version petit format} + +\begin{docCommand}{Calculatrice*}{\oarg{options}} + Cette commande permet d'afficher une calculatrice en petit format à utiliser dans des fiches méthodes par exemple. +\end{docCommand} + +\begin{dispExample*}{sidebyside} +\Calculatrice* +\end{dispExample*} + +L'aspect de la calculatrice est modifiable : + +\begin{docKey}{calcscale}{=\meta{number}}{valeur par défaut : \docValue{0.5}} +Permet de modifier la taille de la calculatrice. Plus la calculatrice est petite, moins les dessins de touches seront précis. +\end{docKey} + +\begin{dispExample*}{sidebyside} +\Calculatrice*[calcscale=1] +\Calculatrice*[calcscale=0.25] +\end{dispExample*} + +\begin{docKey}{calcrotate}{=\meta{number}}{valeur par défaut : \docValue{-30}} +Permet de changer l'angle d'affichage de la calculatrice. +\end{docKey} + +\begin{dispExample*}{sidebyside} +\Calculatrice*[calcrotate=0] \textbf{Méthode} +\qquad +\Calculatrice*[calcrotate=90] \textbf{Méthode} +\par\bigskip +\Calculatrice*[calcrotate=-30] +\hspace{-1em}\textbf{Méthode} +\qquad +\rotatebox{90}{\textbf{Méthode}} +\Calculatrice*[calcrotate=0] +\end{dispExample*} + +\begin{docKey}{calcraise}{=\meta{dim}}{valeur par défaut : \docValue{-2ex}} +Permet de modifier la hauteur de la calculatrice en fonction de la ligne de base. +\end{docKey} + +\begin{dispExample*}{sidebyside} +\Calculatrice*[calcrotate=0, calcraise=0ex] \textbf{Méthode} +\qquad +\rotatebox{90}{\textbf{Méthode}} +\Calculatrice*[calcrotate=0, calcraise=-0.5ex] +\end{dispExample*} + +\begin{dispListing} +\begin{center} + \begin{tikzpicture} + \fill[color=blue!15, rounded corners=5pt] (0,0) rectangle ++(0.75\linewidth,-3.2); + \draw[line width = 2pt, color=blue, rounded corners=5pt, line cap=round] (0,0) |- ++(0.75\linewidth,-3.2) -- ++(0,0.2); + \node (Calc) at (-0.1,0.1) + {\rotatebox{45}{\textbf{Méthode}}\hspace{-2.5em} + \Calculatrice*[calcrotate=-45, calcraise=-2.85ex]}; + \end{tikzpicture} + +\vspace*{-3cm} +\hspace*{0.1\linewidth} +\parbox{0.7\linewidth}{ + Pour tracer une courbe à la calculatrice, on effectue les actions suivantes : + \begin{itemize} + \item appuyer sur \Touche[style=graph, principal=$f(x)$, second={gr.stats}, alpha=f1, fontsize=7pt, position=0.95, raise=-3.5ex] ; + \item taper l'expression de la fonction ; + \item appuyer sur \Touche[style=graph, principal={trace}, second={calculs}, alpha={f4}, position=0.95, fontsize=7pt, raise=-3.5ex]. + \end{itemize} +} +\end{center} +\end{dispListing} + +\begin{center} + \begin{tikzpicture} + \fill[color=blue!15, rounded corners=5pt] (0,0) rectangle ++(0.75\linewidth,-3.2); + \draw[line width = 2pt, color=blue, rounded corners=5pt, line cap=round] (0,0) |- ++(0.75\linewidth,-3.2) -- ++(0,0.2); + \node (Calc) at (-0.1,0.1) + {\rotatebox{45}{\textbf{Méthode}}\hspace{-2.5em} + \Calculatrice*[calcrotate=-45, calcraise=-2.85ex]}; + \end{tikzpicture} + +\vspace*{-3cm} +\hspace*{0.1\linewidth} +\parbox{0.7\linewidth}{ + Pour tracer une courbe à la calculatrice, on effectue les actions suivantes : + \begin{itemize} + \item appuyer sur \Touche[style=graph, principal=$f(x)$, second={gr.stats}, alpha=f1, fontsize=7pt, position=0.95, raise=-3.5ex] ; + \item taper l'expression de la fonction ; + \item appuyer sur \Touche[style=graph, principal={trace}, second={calculs}, alpha={f4}, position=0.95, fontsize=7pt, raise=-3.5ex]. + \end{itemize} +} +\end{center} + \clearpage \printindex diff --git a/Master/texmf-dist/doc/latex/tipfr/latex/tipfr.sty b/Master/texmf-dist/doc/latex/tipfr/latex/tipfr.sty index 625d59aab45..49ad29e72c4 100644 --- a/Master/texmf-dist/doc/latex/tipfr/latex/tipfr.sty +++ b/Master/texmf-dist/doc/latex/tipfr/latex/tipfr.sty @@ -1,20 +1,19 @@ -\def\fileversion{1.4} -\def\filedate{2014/12/29} +\def\fileversion{1.4b} +\def\filedate{2015/01/05} \def\fileauthor{Philippe DE SOUSA} \NeedsTeXFormat{LaTeX2e}[1999/12/01] -\ProvidesClass{tipfr}[% +\ProvidesPackage{tipfr}[% \filedate\space v\fileversion\space LaTeX package by \fileauthor] \RequirePackage[dvipsnames,table]{xcolor} \RequirePackage[zerostyle=d]{newtxtt} \@ifpackageloaded{tikz}{}{\RequirePackage{tikz}} -\usetikzlibrary{calc,shapes,arrows,shadows,backgrounds} +\usetikzlibrary{calc,shapes,arrows,shadows,backgrounds,babel} \@ifpackageloaded{ifthen}{}{\RequirePackage{ifthen}} \@ifpackageloaded{xkeyval}{}{\RequirePackage{xkeyval}} \@ifpackageloaded{mathtools}{}{\RequirePackage{mathtools}} \@ifpackageloaded{amssymb}{}{\RequirePackage{amssymb}} \@ifpackageloaded{multido}{}{\RequirePackage{multido}} -\@ifpackageloaded{babel}{}{\RequirePackage{babel}} %% 13 décembre 2014 : v1.0 - création du package et du design des touches %% 14 décembre 2014 : v1.1 - création de la commande \Touche @@ -22,9 +21,19 @@ %% 27 décembre 2014 : v1.2a - anglicisation des noms d'options %% 27 décembre 2014 : v1.3 - ajout de la commande \Menu pour créer des menus de calculatrice %% 29 décembre 2014 : v1.4 - ajout de la commande \Ecran pour afficher un écran avec courbe ou avec calculs et résultats +%% 02 janvier 2015 : v1.4a - changement de \ProvidesClass en \ProvidesPackage, suppression de \makeatletter, \makeatother +%% 05 janvier 2015 : v1.4b - suppression de \shorthandon{;} et \shorthandoff{;} grace à la librairie babel de Tikz +%% + possibilité de changer le nom de la touche Enter et les options Second et Alpha pour permettre le signe = +%% + suppression du \RequirePackage{babel} +%% 05 janvier 2015 : v1.5 - ajout de la commande étoilée de \Calculatrice pour dessiner une calculatrice mignature +%% Merci à Daniel Flipo et Knut Lickert pour leurs conseils et remarques -\makeatletter + + +%%----------------------------- +%--------- TOUCHES ------------ +%%----------------------------- % définition de l'accent circonflexe et de la racine carrée \newcommand*\Circonflexe{\tikz{\draw[scale=0.25] (0,0)--(1,1)--(2,0);}} @@ -77,8 +86,8 @@ \define@key{Touche}{position}{\def\La@Position{#1}} \define@key{Touche}{alpha}{\ifthenelse{\equal{\string #1}{\string pasdealpha}}% - {\setboolean{ModeAlpha}{false}}% - {\def\Mode@Alpha{\fontsize{\Font@Size}{\Font@Size}\selectfont #1}\setboolean{ModeAlpha}{true}}% + {\setboolean{ModeAlpha}{false}}% + {\def\Mode@Alpha{\fontsize{\Font@Size}{\Font@Size}\selectfont #1}\setboolean{ModeAlpha}{true}}% } \define@key{Touche}{second}{\ifthenelse{\equal{\string #1}{\string pasdeseconde}}% @@ -131,10 +140,16 @@ fixed=true,arrowup=false,arrowdown=false,arrowleft=false,arrowright=false,arrowtot=false, circle=false,radius=20pt,colour=red,thickness=1pt}{} -% commande Touche dont la forme dépend du style choisi + +%%----------------------------- +% commande \Touche dont la forme dépend du style choisi +%%----------------------------- + \newcommand*\Touche[1][]{% \setkeys{Touche}{#1} +%%----------------------------- % Touche blanche pour les chiffres +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheChiffre}}% {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -151,7 +166,9 @@ \end{tikzpicture}}% {\unskip}% }% +%%----------------------------- % Touche grise pour les opérations +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheOperation}}% {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -169,7 +186,9 @@ \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche noire pour les fonctions +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheFonction}} {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -187,7 +206,9 @@ \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche grise pour les graphes +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheGraphe}} {\unskip\begin{tikzpicture}[x=0.5cm,y=0.7cm,remember picture] @@ -205,21 +226,29 @@ \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche Entrer +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheEntrer}} {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] \draw[fill=gray] (0,1)..controls+(20:0.4)and+(160:0.4).. (2,1) node[midway] (c) {} -- (2,1)..controls+(-90:0.75)and+(0:0.7)..(1,-0.5)..controls+(180:0.7)and+(-90:0.75)..(0,1) -- cycle ; - \path (1,0.2) -- (c) node[color=white,pos=\La@Position] {\fontsize{\Font@Size}{\Font@Size}\selectfont \bfseries\sffamily entrer}; + \path (1,0.2) -- (c) node[color=white,pos=\La@Position] {\bfseries\sffamily \Le@Principal}; \coordinate (\Le@Nom) at (1,0.75); \ifKV@Touche@circle\draw[\La@Couleur,line width=\Ep@isseur] (1,0.75) circle (\Le@Rayon);\fi - \node[above] at (c) {\makebox[1.2cm][s]{\bfseries\sffamily\textcolor{blue}{\fontsize{\Font@Size}{\Font@Size}\selectfont préc}% - \hfill\textcolor{ForestGreen}{\fontsize{\Font@Size}{\Font@Size}\selectfont résol}}}; + \ifthenelse{\boolean{ModeSeconde}} + {\ifthenelse{\boolean{ModeAlpha}} + {\node[above] at (c) {\makebox[1.2cm][s]{\bfseries\sffamily\textcolor{blue}% + {\Mode@Seconde}\hfill\textcolor{ForestGreen}{\Mode@Alpha}}};} + {\node[above] at (c) {\bfseries\sffamily\textcolor{blue}{\Mode@Seconde}};}} + {} \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche On/Off +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheOnOff}} {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -232,7 +261,9 @@ \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche 2nde +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheSeconde}} {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -244,7 +275,9 @@ \end{tikzpicture}}% {\unskip}% }% +%%----------------------------- % Touche Alpha +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheAlpha}}% {\unskip\begin{tikzpicture}[x=0.5cm,y=0.5cm,remember picture] @@ -257,7 +290,9 @@ \end{tikzpicture}} {\unskip}% }% +%%----------------------------- % Touche des flèches +%%----------------------------- \raisebox{\Hauteur@Touche}{ \ifthenelse{\boolean{ToucheFleches}}% {\unskip\begin{tikzpicture}[\ifKV@Touche@fixed\else overlay\fi,xshift=\X@Decalage,yshift=\Y@Decalage,scale=\Scale@Fleches] @@ -296,7 +331,18 @@ %------ CALCULATRICE ---------- %%----------------------------- -\newcommand{\Calculatrice}[1][]{ +% options de la commande \Calculatrice* +\define@key{Calculatrice}{calcscale}{\def\Calc@Echelle{#1}} +\define@key{Calculatrice}{calcrotate}{\def\Calc@Rotation{#1}} +\define@key{Calculatrice}{calcraise}{\def\Calc@Position{#1}} + +% configurations par défaut pour \Calculatrice* +\presetkeys{Calculatrice}{calcscale=0.5,calcrotate=-30,calcraise=-2ex}{} + +%%----------------------------- +%-------- Grand format -------- +%%----------------------------- +\newcommand{\Calculatrice@nostar}[1][]{ \begin{tikzpicture}[remember picture] \renewcommand{\tabcolsep}{-3pt} \node (tabcalc) at (0,0) { @@ -357,13 +403,13 @@ \Touche[style=number,principal={0},second={cat.},alpha={$\sqcup$},name=T0] & \Touche[style=number,principal={$\centerdot$},second={$i$},alpha={:},name=DOT] & \Touche[style=number,principal={(--)},second={rép},alpha={?},name=MS] & - \Touche[style=enter,fontsize=7pt,name=ETR] + \Touche[style=enter,fontsize=7pt, principal=entrer, second=préc, alpha=résol, name=ETR] \end{tabular}}; \node (ecran) at ($(tabcalc.north west)+(0.35,0)$) [inner sep=0pt,draw,fill=ForestGreen!15,rectangle, minimum width=6.85cm,minimum height=5cm,anchor=south west] {}; \begin{scope}[shift={(ecran.center)}] - \clip ($(tabcalc.north west)+(0.35,0)$) rectangle ($(tabcalc.north east)+(0,5)$); + \clip ($(tabcalc.north west)+(0.35,0)$) rectangle ($(tabcalc.north east)+(0.2,5)$); \draw(ecran.south)--(ecran.north); \draw(ecran.west)--(ecran.east); \multido{\i=0+1}{7}{\draw ({\i/2},0)--({\i/2},0.05);} @@ -386,21 +432,62 @@ \end{scope} \end{tikzpicture} } -\makeatother + +%%----------------------------- +%-------- Petit format -------- +%%----------------------------- +\newcommand*{\Calculatrice@star}[1][]{% +\setkeys{Calculatrice}{#1}% +\raisebox{\Calc@Position}{% +\begin{tikzpicture}[x=0.5cm,scale=\Calc@Echelle,rotate=\Calc@Rotation] + \draw[fill=black] (0,0) rectangle (2.1,2.6); + \draw[white,fill=white] (0.1,1.5) rectangle (2,2.5); + \fill[white] (0.25,1.35) ellipse (0.15 and 0.05) + ++(0.4,0) ellipse (0.15 and 0.05) + ++(0.4,0) ellipse (0.15 and 0.05) + ++(0.4,0) ellipse (0.15 and 0.05) + ++(0.4,0) ellipse (0.15 and 0.05); + \fill[white] (1.8,1) ellipse (0.2 and 0.15); + \fill[white,rounded corners=2] (0.1,0.9) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.9) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.1,0.9) rectangle ++(0.4,0.2); +%% + \fill[white,rounded corners=2] (0.1,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.1,0.45) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.6,0.45) rectangle ++(0.4,0.2); +%% + \fill[white,rounded corners=2] (0.1,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (0.6,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.1,0.1) rectangle ++(0.4,0.2); + \fill[white,rounded corners=2] (1.6,0.1) rectangle ++(0.4,0.2); +%% +\end{tikzpicture}% +}% +} + +%%----------------------------- +%\Calculatrice = Grand format- +%\Calculatrice* = Petit format- +%%----------------------------- +\newcommand*\Calculatrice{\@ifstar{\Calculatrice@star}{\Calculatrice@nostar}} + %%----------------------------- %------ MENU ------------------ %%----------------------------- -\makeatletter +% Définitions des options \define@boolkey{Menu}{select}[false]{} \define@key{Menu}{size}{\def\t@ille{#1}} \define@key{Menu}{text}{\def\@texte{#1}} \define@key{Menu}{colourbox}{\def\Couleur@Boite{#1}} \define@key{Menu}{colorbox}{\def\Couleur@Boite{#1}} +% Valeurs par défaut \presetkeys{Menu}{select=false,text=\unskip,colorbox=white}{size=15pt} +% Définition de la touche \Menu \newcommand\@Menu[2][]{ \setlength{\fboxsep}{0pt} \setlength{\fboxrule}{0.5pt} \setkeys{Menu}{#1} @@ -413,14 +500,13 @@ \newcommand\Menu[2][]{\@Menu[#1]{#2}} -\makeatother + %%----------------------------- %------ ECRAN ------------------ %%----------------------------- -\shorthandon{;} -\makeatletter + \newcounter{LineCommand} \setcounter{LineCommand}{0} \newcounter{LineResult} @@ -443,6 +529,7 @@ \define@key{Ecran}{plotcolor}{\def\courbe@couleur{#1}} \define@key{Ecran}{plotwidth}{\def\courbe@epaisseur{#1}} +% Configurations par défaut \presetkeys{Ecran}{graphic=false, screencolour=ForestGreen!15, screenname=ecran, @@ -454,6 +541,7 @@ plotwidth=1pt }{} +% Commande \Ecran \newcommand*\Ecran[2][]{% \setcounter{LineCommand}{0} \setcounter{LineResult}{0} @@ -472,7 +560,7 @@ \multido{\i=0+1}{\@IncrementY}{\draw (0,{-\i})--(0.05/\X@Grad,{-\i});} \foreach \courbe/\domain in {#2} \ifx \domain\empty \def\domain{-6:6} \fi - \draw[line width=\courbe@epaisseur,color=\courbe@couleur] plot[domain=\domain,samples=500] (\x,\courbe); + \draw[line width=\courbe@epaisseur,color=\courbe@couleur] plot[domain=\domain,samples=500] (\x,{\courbe}); \end{scope} \end{tikzpicture} \else @@ -490,5 +578,3 @@ \end{tikzpicture} \fi } -\makeatother -\shorthandoff{;} |