10.02.2016 Views

Dessiner

1o3HqYu

1o3HqYu

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

3.1. TRACER UNE COURBE : PLOT (...) 43<br />

Désactiver « : » avec \shorthandoff{:}<br />

On peut dire à L A TEX deneplusconsidérerlecaractère«:»commeuncaractèrespécialdans<br />

les passages où il doit être interprété par TikZ. La commande pour cela est :<br />

\shorthandoff{:}<br />

Où exactement placer cette commande ? Répondre précisément et complètement à cette question<br />

est difficile, parce qu’il s’agit d’interactions à un niveau de base de TEX(lalecturedescaractères<br />

et l’exécution des commandes), et que des effets inattendus peuvent se produire.<br />

La plupart du temps il suffit d’insérer la commande à l’intérieur de chaque environnement<br />

tikzpicture :<br />

\begin{tikzpicture} \shorthandoff{:} ... \end{tikzpicture}<br />

Cependant, cela ne suffit pas si la tikzpicture est elle-même à l’intérieur d’une autre commande,<br />

comme quand on veut encadrer une tikzpicture par \fbox. Onobtientlemessaged’erreur<br />

suivant :<br />

Argument of \tikz@plot@samples@recalc has an extra }<br />

Dans ce cas-là, on peut essayer d’écrire :<br />

{ \shorthandoff{:}<br />

\fbox{ \begin{tikzpicture} ... \end {tikzpicture} } }<br />

Introduire une autre option [domaine={a}{b}]<br />

Nous proposons d’introduire l’option domaine (c’est un mot français rappelant que le problème<br />

se pose pour les utilisateurs de babel en français).<br />

Pour la définir, il suffit d’écrire la ligne suivante à la fin du préambule L A TEX dudocument:<br />

\tikzset { domaine/.style 2 args={domain=#1:#2} }<br />

Alors, dans une tikzpicture, au lieu d’écrire [domain=a:b], onécrira<br />

[domaine={a}{b}]<br />

Cette solution est pratique quand on écrit soi-même le code de ses figures TikZ. Elle ne règle<br />

cependant pas tous les problèmes quand on veut récupérer un code TikZ quiutilisedirectement<br />

l’option domain originale. Dans ce cas-là, il vaut mieux utiliser la solution avec \shorthandoff{:}.<br />

Utiliser le package microtype<br />

Un package récent, microtype, permetderésoudreleproblèmeglobalementdefaçonsimple.<br />

Il suffit d’ajouter :<br />

\usepackage[babel=true,kerning=true]{microtype} après la déclaration d’utilisation du package<br />

babel. Ainsilecaractère«:»nesembleplusposerdeproblème.<br />

Attention :noussupposons,àpartirdemaintenant,quetoutescesprécautionssontprises<br />

quand nous utilisons [domain=a:b] dans les exemples.<br />

Exemples de domaines<br />

Avec les précautions concernant « : », voici comment on peut modifier le domaine de la courbe<br />

polaire précédente (d’équation ✓ = 20 ⇥ r), par exemple en le fixant à 0 6 x 6 90. Onpeut<br />

également en profiter pour modifier l’échelle (diviser les dimensions par 2 avec scale=0.5).<br />

\draw [domain=0:9, scale=0.5] plot (20*\x:\x);<br />

(135 : 6.75)<br />

(90 : 4.5)<br />

✓° = 20 ⇥ r<br />

(45 : 2.25)<br />

(180 : 9)<br />

(0 : 0)

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!