\documentclass[12pt,french]{article}
\usepackage[latin1]{inputenc}
\usepackage{babel}
\usepackage[T1]{fontenc}
\usepackage{listings}
\usepackage[colorlinks=true,urlcolor=blue]{hyperref}
\usepackage[vmargin=2cm,hmargin=2cm]{geometry}
\usepackage{titlesec}
\usepackage{kpfonts}

%--------- Propres à cette doc

\usepackage{cellspace}
\setlength{\cellspacetoplimit}{4pt}
\setlength{\cellspacebottomlimit}{4pt}
\usepackage{tabularx}
\usepackage{lipsum}
\usepackage{multido}
\usepackage[table]{xcolor}
\usepackage[ant]{pas-cours}

%------------------------------

\makeatletter

% -------------------
% TABLE DES MATIERES 
% -------------------

\addto{\captionsfrench}{\renewcommand*{\contentsname}{\begin{ant}\color{red!50!black}\Huge\bfseries Sommaire\end{ant}}}

\def\@dottedtocline#1#2#3#4#5{%
  \ifnum #1>\c@tocdepth \else
    \vskip \z@ \@plus.2\p@
    {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip
     \parindent #2\relax\@afterindenttrue
     \interlinepenalty\@M
     \leavevmode
     \@tempdima #3\relax
     \advance\leftskip \@tempdima \null\nobreak\hskip -\leftskip
     {#4}\nobreak
     \leaders\hbox{$\m@th
        \mkern \@dotsep mu\hbox{.}\mkern \@dotsep
        mu$}\hfill
     \nobreak
     \hb@xt@\@pnumwidth{\hfil\normalfont #5}%
     \par}%
  \fi}

\renewcommand*\l@section
{%
\color{blue!50!black}\large
\def\@linkcolor{blue!50!black}\@dottedtocline{1}{1.5em}{2.3em}
}

\renewcommand*\l@subsection
{%
\color{green!50!black}\normalsize
\def\@linkcolor{green!50!black}
\@dottedtocline{1}{2.3em}{2.6em}
}

\renewcommand*\l@subsubsection
{%
\color{orange!80!black}\normalsize
\def\@linkcolor{orange!80!black}
\@dottedtocline{1}{3em}{3.3em}
}

\def\contentsline#1#2#3#4{%
  \ifx\\#4\\%
    \csname l@#1\endcsname{#2}{#3}%
  \else
      \csname l@#1\endcsname{\hyper@linkstart{link}{#4}{#2}\hyper@linkend}{%
        \hyper@linkstart{link}{#4}{#3}\hyper@linkend
      }%
  \fi
}

% --------------------
% TITRES DES SECTIONS 
% --------------------

\titleformat{\section}[block]
{\helvbx\Large\color{blue}}
{\fcolorbox{blue}{blue}{\textcolor{white}{\bfseries\thesection}}}
{1em}
{\helvbx}

\titleformat{\subsection}[block]
{\helvbx\large\color{blue}}
{\thesubsection}
{1em}
{\helvbx}

\makeatother

\newcommand{\helvbx}{\usefont{T1}{phv}{m}{n}}

\title{pas-cours.sty\\\small v1.09d}
\date{\today}
\author{Stéphane PASQUET\\\href{mailto:contact@mathweb.fr}{contact@mathweb.fr}}

\lstset{
	numbers=left, 
	numberstyle=\tiny, 
	stepnumber=1, 
	numbersep=3pt, 
	language=[LaTeX]TeX, 
	backgroundcolor=\color{blue!5},
	frame=shadowbox,
	rulesepcolor=\color{blue},
	rulecolor=\color{blue},
	framexleftmargin=10pt,
	keywordstyle=\color{blue}\bfseries,
	basicstyle=\ttfamily,
  columns=flexible,
  keepspaces=true,
  upquote=true,
  commentstyle=\color{gray},
  morekeywords={bonus,itemclass,breakbox,multido,geometry,chap,definmot,env,cube,cone,boule,cylindre,pyramreg,prismereg,patronpave,patroncone,patroncylindre,patronpyramreg,patronprismereg}
}

\setlength{\parindent}{0pt}
\begin{document} 

\maketitle

\tableofcontents


\section{Présentation et Installation}

Le package \texttt{pas-cours.sty} a été créé dans le but d'avoir une belle présentation de cours et de dessiner des figures usuelles 3D très simplement.

\medskip

Il a été construit en fonction de mes besoins personnels, sachant que je construis mes cours sans section.

\medskip

Ce package charge automatiquement les extensions suivantes :

\medskip

\begin{quote}
amssymb (pour le carré plein optionnel en fin de démonstration)\\
tikz (avec les librairies "calc", "fadings" et "arrows") s'il n'a pas été chargé avant\\
xkeyval\\
xstring\\
enumitem (pour la gestion des listes)
\end{quote}

\medskip

Je vous conseille d'installer manuellement ce package (dans le répertoire \texttt{texmf-local/tex/latex/pas-cours} par exemple) afin d'avoir accès à la documentation à tout moment avec la commande \texttt{texdoc pas-cours} car on m'a reporté un problème pour les utilisateurs de TeXLive et MacTeX. 


\section{Préambule}

Le préambule de votre fichier \texttt{tex} doit comporter nécessairement la ligne suivante :

\medskip

\begin{lstlisting}
\usepackage{pas-cours}
\end{lstlisting}

\medskip

Si vous souhaitez que les titres soient écrits avec la police \texttt{anttlc}, vous pouvez passer l'option \texttt{ant} en appelant le package \texttt{pas-cours} :

\medskip

\begin{lstlisting}
\usepackage[ant]{pas-cours}
\end{lstlisting}

\medskip

\`A titre d'information, ce document a été compilé avec l'option \texttt{ant} (donc en utilisant la police \texttt{anttlc}). Regardez le titre de chaque environnement (propriétés, théorèmes, etc.) plus loin ... vous verrez que ce n'est pas une police normale.

\section{Titres de chapitre}

\begin{lstlisting}
\chap[<options>]{Titre du chapitre}{Sous-titre du chapitre}
\end{lstlisting}

\bigskip

\begin{tabularx}{\textwidth}{rcX}
\texttt{autonum} & : & booléen (par défaut : false). Indique si le numéro de chapitre doit \^etre automatiquement calculé.\\
\texttt{num} & = & le numéro du chapitre (obligatoire si "autonum=false")\\
\texttt{color} & = & couleur que vous voulez (option facultative ; en cas d'absence, la couleur sera rouge)\\
\texttt{pos} & = & left ou right (option facultative ; en cas d'absence, la position du numéro du chapitre sera "right" donc à droite)
\end{tabularx}

\medskip

\begin{lstlisting}
\chap[num=1,color=blue]{Nombres entiers}{Stéphane PASQUET, \today}
\end{lstlisting}

\medskip

\emph{Voir ce que cela donne page suivante}

\newpage

\chap[num=1,color=blue]{Nombres entiers}{Stéphane PASQUET, \today}

\section{Propriétés, définitions, etc.}

\begin{lstlisting}
\env[<options>]{texte}
\end{lstlisting}

\bigskip

\begin{tabularx}{\textwidth}{rcX}
\texttt{style}& = & defi (pour définition)\\
              &   & prop (pour propriété)\\
              &   & thm (pour théorème)\\    
              &   & demo (pour démonstration)\\                        
              &   & nota (pour notation)\\
			  &   & ex (pour exemple)\\
			  &   & act (pour activité)\\
			  &   & rem (pour remarque)\\
			  &   & meth (pour méthode)\\
\texttt{num} & :  & booléen pour numéroter l'environnement (par défaut, num = false)\\
\texttt{notitle} & : & booléen pour supprimer le titre (Option facultative)\\
\texttt{notitlebreak} & : & booléen pour supprimer le titre dans le second cadre si l'environnement est coupé (avec l'option la commande \textbackslash breakbox)\\
\texttt{pluriel} & : & désigne s'il faut mettre un "s" à la fin du titre (Option facultative)\\
\texttt{name} & = & nom de la propriété (option facultative)\\
\texttt{title} & = & titre que vous souhaitez mettre (si le titre par défaut ne vous convient pas)\\
\texttt{color} & = & couleur du cadre (si la couleur par défaut ne vous convient pas)\\
\texttt{degrade} & : & booléen pour faire un dégradé dans le cadre\\
\texttt{endsymb} & : & booléen qui met un symbole de fin quand il figure parmi les options (par défaut : $\blacksquare$)\\
\texttt{symb} & = &  symbole que vous souhaitez mettre à la fin (si celui par défaut ne vous convient pas)\\
\texttt{toc} & : & booléen pour mettre le \texttt{name} de l'environnement actuel dans la table des matière (par défaut : \texttt{false})\\
\texttt{notoc} & : & booléen pour indiquer de ne pas mettre le \texttt{name} de l'environnement actuel dans la table des matières (par défaut : \texttt{false})
\end{tabularx}

\subsection{Théorèmes}

\begin{lstlisting}
\env[style=thm,name=Théorème de Pythagore,degrade]
{Si ABC est un triangle rectangle en A, alors $BC^2=AB^2+AC^2$.}
\end{lstlisting}

\medskip

\env[style=thm,name=Théorème de Pythagore,degrade]
{Si ABC est un triangle rectangle en A, alors $BC^2=AB^2+AC^2$.}

\begin{lstlisting}
\env[style=thm,name=Théorème de Pythagore,num]
{Si ABC est un triangle rectangle en A, alors $BC^2=AB^2+AC^2$.}
\end{lstlisting}

\medskip

\env[style=thm,name=Théorème de Pythagore,num]
{Si ABC est un triangle rectangle en A, alors $BC^2=AB^2+AC^2$.}

\subsection{Définitions}

\begin{lstlisting}
\env[style=defi,name=Centre de gravité,degrade,notitle]
{Dans un triangle, le point d'intersection des médianes est appelé le 
\definmot{centre de gravité}.}

\env[style=defi,pluriel]
{
Dans un triangle, \\ \\
une droite passant par un sommet et par le milieu du côté opposé est appelée 
une \definmot{médiane}.\\
Une droite passant par un sommet et perpendiculaire au coté opposé est appelée 
une \definmot{hauteur}.
}
\end{lstlisting}

\medskip

\env[style=defi,name=Centre de gravité,degrade,notitle]{Dans un triangle, le point d'intersection des médianes est appelé le \definmot{centre de gravité}.}

\env[style=defi,pluriel]{
Dans un triangle, \\
une droite passant par un sommet et par le milieu du côté opposé est appelée une \definmot{médiane}.}

Notez la présence ici de la commande \texttt{$\backslash$definmot}, définie dans ce package, pour mettre en valeur le mot défini.

\subsection{Propriétés}

\begin{lstlisting}
\env[style=prop]{Dans un triangle, les trois médianes sont concourantes.}
\end{lstlisting}

\env[style=prop]{Dans un triangle, les trois médianes sont concourantes.}

\vspace*{-1em}
\subsection{Exemples}

\begin{lstlisting}
\env[style=ex,pluriel]{
1. $x+2=9$ donc $x=9-2$, soit $x=7$ \\
2. $x-3=4$ donc $x=4+3$, soit $x=7$}
\end{lstlisting}

\env[style=ex,pluriel]{1. $x+2=9$ donc $x=9-2$, soit $x=7$ \\2. $x-3=4$ donc $x=4+3$, soit $x=7$}

\subsection{Notations}

\begin{lstlisting}
\env[style=nota,pluriel]{%
1. $x \times x$ est noté $x^2$\\
2. $x+x$ est noté $2x$\\
3. $x+x+x$ est noté $3x$}
\end{lstlisting}

\env[style=nota,pluriel]{%
1. $x \times x$ est noté $x^2$\\
2. $x+x$ est noté $2x$}

\vspace*{-1em}
\subsection{Remarques}

\begin{lstlisting}
\env[style=rem,name=Note historique]{%
Le symbole "$\times$" a été introduit par William OUGHTRED (1574 - 1660).}
\end{lstlisting}

\env[style=rem,name=Note historique]{%
Le symbole "$\times$" a été introduit par William OUGHTRED (1574 - 1660).}

\subsection{Activités}

\begin{lstlisting}
\env[style=act,name=Propriétés sur les droites]{%
1. Tracez deux droites perpendiculaires (d) et (d').\\
2. Tracez une droite (d'') perpendiculaire à (d).\\
3. Comment semble être (d'') par rapport à (d') ?}
\end{lstlisting}

\medskip

\env[style=act,name=Propriétés sur les droites]{%
1. Tracez deux droites perpendiculaires (d) et (d').\\
2. Tracez une droite (d'') perpendiculaire à (d).\\
3. Comment semble être (d'') par rapport à (d') ?}

\subsection{Méthodes}

\begin{lstlisting}
\env[style=meth,name=Mesurer un angle,endsymb,symb=$\bigstar$]{On insère ici
les schémas}
\end{lstlisting}

\medskip

\env[style=meth,name=Mesurer un angle,endsymb,symb=$\bigstar$]{%
On insère ici les schémas}

\subsection{Démonstrations}

\begin{lstlisting}
\env[name=Théorème de Pythagore,endsymb,title=Démonstration,style=demo]{%
Ici, on rédige la preuve du théorème de Pythagore.\\
C'est un peu long ...}
\end{lstlisting}

\medskip

\env[name=Théorème de Pythagore,endsymb,title=Démonstration,style=demo]{%
Ici, on rédige la preuve du théorème de Pythagore.\\
C'est un peu long ...}

\subsection{Noms avec virgule}

Si un encadré doit avoir un nom avec une ou plusieurs virgules, il faut mettre le \texttt{name} entre accolades.

\medskip

\begin{lstlisting}
\env[style=defi,pluriel,name={dixièmes, centièmes et millièmes}]{%
On insère ici les définitions}
\end{lstlisting}

\medskip

\env[style=defi,pluriel,name={dixièmes, centièmes et millièmes}]{%
On insère ici les définitions}

\subsection{Environnement remplaçant la macro (ajout du 05 mai 2013)}

La macro \texttt{\textbackslash env} a été créée à l'origine de l'extension ; depuis, quelques progrès ont été faits de mon c\^oté, et ces progrès m'ont permis de faire évoluer cette macro en un environnement (bien plus pratique). Vous noterez que le contenu des cadres n'est plus en italique par défaut.

De plus, j'avais constaté un problème majeur : lorsque l'on arrive à la fin d'une page, les macros définissent un cadre qui passe à la page suivante si sa hauteur est plus grande que la hauteur disponible (ce qui peut créer des problèmes de mise en page).

\medskip

C'est la raison pour laquelle j'ai créé une commande qui permet de \og casser  \fg{} le cadre.

\subsubsection{L'environnement \og pasbox\fg{} }

\begin{lstlisting}
\begin{pasbox}[<options>]
Contenu
\end{pasbox}
\end{lstlisting}

Les options sont les m\^emes que pour la commande \texttt{\textbackslash env}. On a par exemple :

\medskip

\begin{lstlisting}
\begin{pasbox}[style=thm,name={Théorème de Pythagore},degrade]
Soit ABC un triangle rectangle en A. Alors, \[ BC^2=AB^2+AC^2\]\vskip-2.3em
\end{pasbox}
\end{lstlisting}

\medskip

qui donne :

\medskip

\begin{pasbox}[style=thm,name={Théorème de Pythagore},degrade]
Soit ABC un triangle rectangle en A. Alors, \[ BC^2=AB^2+AC^2 \]\vskip-2.3em
\end{pasbox}

\subsubsection{Cassage d'un cadre : la commande \textbackslash breakbox}

\begin{lstlisting}
\begin{pasbox}[style=ex,pluriel,degrade,name={Théorème de Pythagore}]
ABC est un triangle rectangle en A tel que $\text{AB}=5$ et $\text{AC}=7$.\\
On a alors :
\begin{align*}
BC^2 & = AB^2+AC^2\\
BC^2& = 74
\end{align*}
\breakbox
De même, dans le triangle BCD rectangle en D, avec $\text{BD}=6$, on a :
\begin{align*}
CD^2 & = BD^2+BC^2\\
CD^2 & = 36+74\\
CD^2 & = 110
\end{align*}\vskip-2.3em
\end{pasbox}
\end{lstlisting}

\begin{pasbox}[style=ex,pluriel,degrade,name={Théorème de Pythagore}]
ABC est un triangle rectangle en A tel que $\text{AB}=5$ et $\text{AC}=7$.\\
On a alors :
\begin{align*}
BC^2 & = AB^2+AC^2\\
BC^2& = 74\\
BC & =\sqrt{74}
\end{align*}
\breakbox
De même, dans le triangle BCD rectangle en D, avec $\text{BD}=6$, on a :
\begin{align*}
CD^2 & = BD^2+BC^2\\
CD^2 & = 36+74\\
CD^2 & = 110
\end{align*}\vskip-2.3em
\end{pasbox}

\medskip

\paragraph*{N.B.} Dans l'éventualité où vous souhaiteriez enlever le titre de la seconde bo\^ite, utilisez l'option \texttt{notitlebreak} :

\medskip

\begin{lstlisting}
\begin{pasbox}[style=ex,notitlebreak]
Premier cadre
\breakbox
Second cadre
\end{pasbox}
\end{lstlisting}

Qui donnera :

\medskip

\begin{pasbox}[style=ex,notitlebreak]
Premier cadre
\breakbox
Second cadre
\end{pasbox}

\paragraph*{Remarque :} si vous mettez l'option \texttt{notitle}, il n'y aura pas de titre au 1\ier{} et 2\ieme{} cadre.

\subsection{Insérer un item dans la table des matières}

Par défaut, rien n'est inséré dans la table des matières.\\
Si l'on veut qu'il n'en soit pas ainsi, on utilisera l'option \texttt{toc} comme dans l'exemple suivant :

\begin{lstlisting}
\begin{pasbox}[style=thm,name=Pythagore,toc]
Si un triangle ABC est rectangle en A, alors :
\[ BC^2=AB^2+AC^2.\]
\end{pasbox}
\end{lstlisting}

\medskip

Si l'on veut que tous les environnements figurent dans la table des matières, on fera appel au package avec l'option \texttt{everytoc} :

\medskip

\begin{lstlisting}
\usepackage[everytoc]{pas-cours}
\end{lstlisting}

Dans ce cas, tous les environnements où \texttt{name} sera informé, \texttt{name} sera inséré dans la table des matières.\\
Si on ne souhaite pas qu'un \texttt{name} figure dans cette table, on utilisera l'option \texttt{notoc}.

\medskip

\begin{lstlisting}
\begin{pasbox}[style=prop,notoc]
La, je suis sûr que cette boîte ne figurera pas dans la TOC.
\end{pasbox}
\end{lstlisting}

\section{Environnements \og \`A retenir \fg, \og Attention \fg{} et \og Prérequis \fg{}  }

\subsection{\`A retenir}

\begin{lstlisting}
\begin{aretenir}[0.5]
\lipsum[1]
\end{aretenir}
\end{lstlisting}

\begin{aretenir}[0.5]
\lipsum[1]
\end{aretenir}

Le nombre entre crochets est un coefficient pour agrandir ou réduire la taille de l'image.

\subsection{Attention}

\begin{lstlisting}
\begin{attention}[0.5]
\lipsum[1]
\end{attention}
\end{lstlisting}

\begin{attention}[0.5]
\lipsum[1]
\end{attention}

Le nombre entre crochets est un coefficient pour agrandir ou réduire la taille de l'image.

\subsection{Prérequis}

\begin{minipage}{0.33\linewidth}
\begin{lstlisting}
\begin{prerequis}
\item Prérequis 1
\item Prérequis 2
\end{prerequis}
\end{lstlisting}
\vspace*{1.5cm}
\phantom{-}
\end{minipage}
\begin{minipage}{1cm}
~
\end{minipage}
\begin{minipage}{0.5\linewidth}
\begin{prerequis}
\item Prérequis 1
\item Prérequis 2
\end{prerequis}
\end{minipage}

\section{Commande \og bonus \fg{} }

Cette commande s'utilise généralement en fin de chapitre, lorsque l'enseignant(e) souhaite insérer des fiches.

\medskip

\begin{lstlisting}
\bonus{Titre} % Insère le titre dans le sommaire
\bonus*{Titre} % N'insère pas le titre dans le sommaire
\end{lstlisting}

Elle exécute un saut de page (avec la commande \textbackslash newpage), puis insère un titre sous la forme \og Complément <num> : Titre \fg{} (les numéros sont automatiquement calculés).

\section{Styles des listes}

Par défaut, le style des listes a changé :

\medskip\itemclass{black}

\begin{minipage}{0.25\textwidth}
\begin{lstlisting}
\begin{enumerate}
\item Item 1
\item Item 2
\end{enumerate}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.25\textwidth}
\begin{enumerate}
\item Item 1
\item Item 2
\end{enumerate}
\end{minipage}
\begin{minipage}{0.25\textwidth}
\begin{lstlisting}
\begin{itemize}
\item Item 1
\item  Item 2
\begin{itemize}
\item Sous-Item 1
\end{itemize}
\end{itemize}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.25\textwidth}
\begin{itemize}
\item Item 1
\item Item 2
\begin{itemize}
\item Sous-Item 1
\end{itemize}
\end{itemize}
\end{minipage}

\medskip

La couleur varie en fonction de l'environnement dans lequel est la liste.

Pour changer la couleur, on peut utiliser la commande \texttt{\textbackslash itemclass\{<couleur>\}} :

\medskip

\begin{minipage}{0.5\textwidth}
\begin{lstlisting}
\itemclass{red}
\begin{enumerate}
\item Item 1
\end{enumerate}
\itemclass{blue}
\begin{enumerate}[start=2]
\item Item 2
\end{enumerate}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\textwidth}
\itemclass{red}
\begin{enumerate}
\item Item 1
\end{enumerate}
\itemclass{blue}
\begin{enumerate}[start=2]
\item Item 2
\end{enumerate}
\end{minipage}

Dans l'éventualité où ces styles ne vous plaisent pas, vous pouvez toujours utiliser les outils du package \texttt{enumitem} pour les changer (dans ce cas, reportez-vous à sa documentation).

\section{Figures usuelles 3D}

En collège, on a affaire très souvent aux mêmes figures 3D. Voici quelques outils qui vous permettrons de les dessiner plus rapidement :

\medskip

\subsection{Le cube et le parallélépipède rectangle}

\begin{lstlisting}
\begin{tikzpicture}
\cube[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{bordercolor} & = & la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor} & = &  la couleur des faces (par défaut, elle sera blanche)\\
\texttt{angle} & = &  l'angle de la perspective (par défaut, il sera de 45$^\circ$)\\
\texttt{scale} & = &  l'agrandissement  (par défaut, l'arête du cube est égale à 1 cm)\\
\texttt{coefopaq} & = &  le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{prof} & = &  la profondeur du parallélépipède rectangle (par défaut, elle faut 1)\\
\texttt{name} & : &  option booléenne ; si elle ne paraît pas, la figure sera sans nom\\
\texttt{legende} & : &  option booléenne ; si elle ne paraît pas, la légende de la figure ne sera pas écrite\\
\end{tabular}

\bigskip

\begin{lstlisting}
\begin{tikzpicture}
\cube[bordercolor=orange,incolor=green!50!black,angle=30, coefopaq=0.2,scale=3,
name,legende]
\end{tikzpicture}
\end{lstlisting}

\begin{center}
\begin{tikzpicture}
\cube[bordercolor=orange,incolor=green!50!black,angle=30,coefopaq=0.2,scale=3,name,legende]
\end{tikzpicture}
\end{center}


\begin{lstlisting}
\begin{tikzpicture}
\cube[bordercolor=blue,incolor=blue,angle=45,coefopaq=0.3,scale=2]
\end{tikzpicture}
\end{lstlisting}

\begin{center}
\begin{tikzpicture}
\cube[bordercolor=blue,incolor=blue,angle=45,coefopaq=0.3,scale=2]
\end{tikzpicture}
\end{center}

\begin{lstlisting}
\begin{tikzpicture}
\cube[bordercolor=purple,incolor=purple,angle=30,scale=2,prof=3,coefopaq=0.2]
\end{tikzpicture}
\end{lstlisting}

\begin{center}
\begin{tikzpicture}
\cube[bordercolor=purple,incolor=purple,angle=30,scale=2,prof=3,coefopaq=0.2]
\end{tikzpicture}
\end{center}

\subsection{Le cône de révolution}

\begin{lstlisting}
\begin{tikzpicture}
\cone[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{bordercolor}& = & la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor} & = &  la couleur des faces (par défaut, elle sera blanche)\\
\texttt{incl} & = &  coefficient d'inclinaison du disque de base (par défaut, égal à 0,33)\\
\texttt{hauteur} & = &  hauteur du cône (par défaut, elle vaut 3 cm)\\
\texttt{coefopaq} & = &  le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{rayon} & = &  rayon du disque de base (par défaut, il faut 1 cm)\\
\texttt{centre} & = &  nom du centre du disque de base (par défaut, il est nommé O)\\
\texttt{poscentre} & = &  position du centre du disque de base (par défaut : below)\\
				   &  & \small possibilités : below, left, right, above, above right, above left, below right et below left\\
\texttt{sommet} & = &  nom du sommet du cône (par défaut, il est nommé S)\\
\texttt{posommet} & = &  position du nom du sommet (par défaut : above). \\
				  &   & On a les mêmes choix que pour la position du nom du centre de la base\\
\texttt{scalecentre} & = & coefficient d'agrandissement du point représentant le centre du disque de base\\
\texttt{name} & : &  option booléenne ; si elle ne paraît pas, la figure sera sans nom\\
\texttt{axe} & : &  option booléenne ; si elle ne paraît pas, l'axe de révolution ne sera pas dessiné\\
\texttt{axecolor} &=& couleur de l'axe de révolution (par défaut, il est rouge)\\
\texttt{legende} & : & option booléenne ; si elle ne paraît pas, la légende de la figure ne sera pas mise\\
\end{tabular}

\bigskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cone
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\begin{center}
\begin{tikzpicture}
\cone
\end{tikzpicture}
\end{center}
\end{minipage}

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cone[incolor=purple,bordercolor=purple,
coefopaq=0.3,incl=0.1,rayon=3,hauteur=3,
name,sommet=A,centre=B,poscentre=right,
scalecentre=3]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\begin{center}
\begin{tikzpicture}
\cone[incolor=purple,bordercolor=purple,coefopaq=0.3,incl=0.1,rayon=3,hauteur=3,
name,sommet=A,centre=B,poscentre=right,scalecentre=3]
\end{tikzpicture}
\end{center}
\end{minipage}

\begin{minipage}{0.52\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cone[incolor=green,coefopaq=0.3,rayon=3,
hauteur=3,name,sommet=A,centre=B,axe,
legende,posommet={above right},
poscentre=right,incl=0.1,scalecentre=3]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.48\linewidth}
\begin{center}
\begin{tikzpicture}[scale=0.8]
\cone[incolor=green,coefopaq=0.3,rayon=3,hauteur=3,name,sommet=A,centre=B,axe,legende,
posommet={above right},poscentre=right,incl=0.1,scalecentre=3]
\end{tikzpicture}
\end{center}
\end{minipage}

\subsection{Le cylindre de révolution}

\begin{lstlisting}
\begin{tikzpicture}
\cylindre[<options>]
\end{tikzpicture}
\end{lstlisting}

\scalebox{0.9}{%
\begin{tabular}{rcl}
\texttt{bordercolor} & = &  la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor} & = & la couleur des faces (par défaut, elle sera blanche)\\
\texttt{incl} & = &  coefficient d'inclinaison du disque de base (par défaut, égal à 0,33)\\
\texttt{hauteur} & = &  hauteur du cône (par défaut, elle vaut 3 cm)\\
\texttt{coefopaq} & = &  le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{rayon} & = &  rayon du disque de base (par défaut, il faut 1 cm)\\
\texttt{centrehaut} & = & nom du centre du disque du haut (par défaut, il est nommé H)\\
\texttt{poscentrehaut} & = &  position du nom du centre du disque du haut (par défaut : below)\\
						&  & \small Possibilités : below, left, right, above, above right, above left, below right et below left\\
\texttt{centrebas} & = &  nom du centre du disque du bas (par défaut, il est nommé B)\\
\texttt{poscentrebas} & = & position du centre du disque de base (par défaut : below)\\
					&  & \small Possibilités : below, left, right, above, above right, above left, below right et below left\\
\texttt{scalecentre} & = &  coefficient d'agrandissement du point représentant le centre du disque de base\\
\texttt{name}& : & option booléenne ; si elle ne paraît pas, la figure sera sans nom\\
\texttt{axe} & : & option booléenne ; si elle ne paraît pas, l'axe de révolution ne sera pas dessiné\\
\texttt{axecolor} &= &couleur de l'axe de révolution (par défaut, il est rouge)\\
\texttt{legende} & : &  option booléenne ; si elle ne paraît pas, la légende de la figure ne sera pas mise\\
\texttt{rectgener} & : & option booléenne ; si elle ne paraît pas, le rectangle générateur ne sera pas tracé
\end{tabular}}

\bigskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cylindre
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\cylindre
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cylindre[incolor=purple,bordercolor=
purple,coefopaq=0.3,incl=0.1,rayon=3,
hauteur=3,name,centrehaut=A,
poscentrehaut=left,poscentrebas=left,
scalecentre=3]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\cylindre[incolor=purple,bordercolor=purple,coefopaq=0.3,incl=0.1,rayon=3,hauteur=3,
name,centrehaut=A,poscentrehaut=left,poscentrebas=left,scalecentre=3]
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\cylindre[incolor=blue,bordercolor=red,
coefopaq=0.2,name,legende,rectgener,axe,
poscentrehaut=left,poscentrebas=left,
scalecentre=3]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}[scale=0.9]
\cylindre[incolor=blue,bordercolor=red,coefopaq=0.2,name,legende,rectgener,axe,
poscentrehaut=left,poscentrebas=left,scalecentre=3]
\end{tikzpicture}
\end{minipage}

\subsection{Sphère et boule}

\begin{lstlisting}
\begin{tikzpicture}
\boule[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{border} & : & option booléenne (si mentionnée, le bord de la boule (la sphère) est dessinée\\
\texttt{bordercolor} & = &  la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor} & = & la couleur de la boule (par défaut, elle sera blanche)\\
\texttt{coefopaq} & = &  le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{centre} & = &  nom du centre de la boule (par défaut, il est nommé O)\\
\texttt{poscentre} & = & position du centre de la boule (par défaut : below)\\
					&  & \small Possibilités : below, left, right, above, above right, above left, below right et below left\\
\texttt{scale} & = &  coefficient d'agrandissement de la boule\\
\texttt{name} & : & option booléenne ; si elle ne paraît pas, le centre ne sera pas dessiné\\
\texttt{grandcercle} & : & option booléenne ; si elle ne paraît pas, le grand cercle ne sera pas dessiné\\
\texttt{legende}  & : & option booléenne ; si elle ne paraît pas, la légende ne sera pas mise\\
\end{tabular}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\boule
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\boule
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\boule[grandcercle,name,incolor=blue,
bordercolor=blue,legende]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}[scale=0.8,every node/.style={scale=0.8}]
\boule[grandcercle,name,incolor=blue,
bordercolor=blue,legende]
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\boule[coefopaq=0,border,grandcercle,
name,poscentre={below right}]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\boule[coefopaq=0,border,grandcercle,name,poscentre={below right}]
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.6\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\boule[coefopaq=0.2,grandcercle,name,centre=A,
incolor=green,scale=0.5,poscentre=right]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.4\linewidth}
\centering
\begin{tikzpicture}
\boule[coefopaq=0.2,grandcercle,name,centre=A,incolor=green,scale=0.5,poscentre=right]
\end{tikzpicture}
\end{minipage}

\newpage

\subsection{Pyramide à base régulière}

\begin{lstlisting}
\begin{tikzpicture}
\pyramreg[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{n} &=& nombre de côtés de la base (par défaut : 3)\\
\texttt{bordercolor} & = &  la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor} & =  & la couleur de la boule (par défaut, elle sera blanche)\\
\texttt{coefopaq} & = &  le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{centre} & =& nom du centre de la base (par défaut, il est nommé O)\\
\texttt{poscentre} & = & position du centre de la boule (par défaut : below)\\
				&   & \small Possibilités : below, left, right, above, above right, above left, below right et below left\\
\texttt{sommet} & =& nom du sommet (par défaut, il est nommé S)\\
\texttt{posommet}&=& position du nom du sommet (par défaut : above). \\
& &Mêmes choix que pour le centre de la base\\
\texttt{scalecentre}&=& coefficient d'agrandissement du point représentant le centre de la base\\
\texttt{axe} &:& option booléenne ; si elle ne figure pas, l'axe de rotation ne sera pas tracé\\
\texttt{axecolor}&=& couleur de l'axe de rotation (par défaut : rouge)\\
\texttt{name} &:& option booléenne ; si elle ne paraît pas, le centre de la base et le nom des points ne\\
& & sera pas mis\\
\texttt{hauteur}&=& hauteur du sommet (par défaut : 5 cm)\\
\texttt{rayon}&=& rayon du cercle circonscrit à la base (par défaut : 2 cm)\\
\texttt{incl}&=& coefficient d'inclinaison de la base\\
\texttt{legende} &:& option booléenne ; si elle ne paraît pas, la légende ne sera pas mise\\
\texttt{rotat}&=& angle (en degré) de rotation de la vue (par défaut, il est nul)
\end{tabular}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\pyramreg
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\pyramreg
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.4\linewidth}
\vspace*{4em}
\begin{lstlisting}
\begin{tikzpicture}
\pyramreg[n=6,axe,name,
posommet={above right},
poscentre=right,
incolor=green!50!black,
bordercolor=green!50!black,
hauteur=3,rayon=3,scalecentre=5,
poscentre=left,legende]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.6\linewidth}
\centering
\begin{tikzpicture}[scale=0.6,every node/.style={scale=0.6}]
\pyramreg[n=6,axe,name,posommet={above right},poscentre=right,incolor=green!50!black,
bordercolor=green!50!black,hauteur=3,rayon=3,scalecentre=5,poscentre=left,legende]
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.55\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\pyramreg[n=5,incolor=blue,bordercolor=red,
hauteur=4,incl=0.5]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.45\linewidth}
\centering
\begin{tikzpicture}
\pyramreg[n=5,incolor=blue,bordercolor=red,hauteur=4,incl=0.5]
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\pyramreg[n=13,coefopaq=0,name]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\pyramreg[n=13,coefopaq=0,name]
\end{tikzpicture}
\end{minipage}

\newpage

\subsection{Prisme à base régulière}

\begin{lstlisting}
\begin{tikzpicture}
\prismereg[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{n}&=& nombre de côtés de la base (par défaut : 3)\\
\texttt{bordercolor}&=& la couleur du bord (par défaut, elle sera noire)\\
\texttt{incolor}&=& la couleur de la boule (par défaut, elle sera blanche)\\
\texttt{coefopaq}&=& le coefficient d'opacité, entre 0 et 1 (par défaut, il vaut 0,5)\\
\texttt{axe} &:&  option booléenne ;  si elle ne figure pas, l'axe de rotation ne sera pas tracé\\
\texttt{axecolor}&=& couleur de l'axe de rotation (par défaut : rouge)\\
\texttt{hauteur}&=& hauteur du sommet (par défaut : 5 cm)\\
\texttt{rayon}&=& rayon du cercle circonscrit à la base (par défaut : 2 cm)\\
\texttt{incl}&=& coefficient d'inclinaison de la base\\
\texttt{legende}&:&  option booléenne ; si elle ne paraît pas, la légende ne sera pas mise\\
\texttt{rotat}&=& angle de rotation de la vue (par défaut, il est nul sauf pour n=3 où il est égal à 10$^{\circ}$)\\
\texttt{name}&:&  option booléenne ; si elle ne paraît pas, le nom des points ne figurera pas\\
\end{tabular}

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\prismereg[n=5,rotat=20,incolor=blue,
bordercolor=red,rayon=3,hauteur=2,name]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\prismereg[n=5,rotat=20,incolor=blue,bordercolor=red,rayon=3,hauteur=2,name]
\end{tikzpicture}
\end{minipage}

\begin{minipage}{0.5\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\prismereg
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.5\linewidth}
\centering
\begin{tikzpicture}
\prismereg
\end{tikzpicture}
\end{minipage}

\medskip

\begin{minipage}{0.35\linewidth}
\begin{lstlisting}
\begin{tikzpicture}
\prismereg[n=6,coefopaq=0,
incl=0.2,rotat=20,legende,
incolor=black,axe]
\end{tikzpicture}
\end{lstlisting}
\end{minipage}
\begin{minipage}{0.7\linewidth}
\centering
\begin{tikzpicture}
\prismereg[n=6,coefopaq=0,incl=0.2,rotat=20,legende,incolor=black,axe]
\end{tikzpicture}
\end{minipage}

\section{Patrons de figures 3D}

\subsection{Pavé droit}

\begin{lstlisting}
\begin{tikzpicture}
\patronpave[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{a}&=& mesure de la première arête (par défaut : 3 cm)\\
\texttt{b}&=& mesure de la seconde arête (par défaut : 3 cm)\\
\texttt{c}&=& mesure de la troisième arête (par défaut : 3 cm)\\
\texttt{pos}&=& position des faces du dessus (1, 2, 3 ou 4) - par défaut : 2\\
\texttt{legende}&:& option booléenne ; si elle ne figure pas, la légende ne sera pas indiquée\\
\texttt{codages}&:&  option booléenne ; si elle ne figure pas, les codages ne seront pas indiqués\\
\end{tabular}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronpave
\end{tikzpicture}
\end{lstlisting}

\begin{center}
\begin{tikzpicture}
\patronpave
\end{tikzpicture}
\end{center}

\medskip

\begin{lstlisting}
\begin{tikzpicture}
\patronpave[pos=1,codages,legende,a=1,b=2,c=3]
\end{tikzpicture}
\end{lstlisting}

\begin{center}
\begin{tikzpicture}
\patronpave[pos=1,codages,legende,a=1,b=2,c=3]
\end{tikzpicture}
\end{center}

\bigskip

Pour obtenir tous les patrons d'un pavé, il suffit de faire une boucle (avec le package \texttt{multido}) comme dans l'exemple page suivante :

\newpage

\begin{lstlisting}
\multido{\i=1+1}{4}{%
\begin{tikzpicture}
\patronpave[pos=\i,codages,a=1,b=2,c=3]
\end{tikzpicture}
\ifnum\i=2 \\ \fi}
\end{lstlisting}

\medskip

\multido{\i=1+1}{4}{%
\begin{tikzpicture}
\patronpave[pos=\i,codages,a=1,b=2,c=3]
\end{tikzpicture}
\ifnum\i=2 \\ \fi}

\newpage

\subsection{Cône de révolution}

\begin{lstlisting}
\begin{tikzpicture}
\patroncone[<options>]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{tabular}{rcl}
\texttt{r}&=& rayon du disque de base (par défaut : 3 cm)\\
\texttt{h}&=& hauteur du cône (par défaut : 5 cm)\\
\texttt{legende}&:& option booléenne ; si elle ne figure pas, la légende ne sera pas indiquée
\end{tabular}

\bigskip

\begin{lstlisting}
\begin{tikzpicture}
\patroncone
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patroncone
\end{tikzpicture}
\end{center}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patroncone[legende,r=2,h=3]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patroncone[legende,r=2,h=3]
\end{tikzpicture}
\end{center}

\subsection{Cylindre de révolution}

\begin{lstlisting}
\begin{tikzpicture}
\patroncylindre[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{r}&=& rayon du disque de base (par défaut : 2 cm)\\
\texttt{h}&=& hauteur du cône (par défaut : 5 cm)\\
\texttt{legende}&:& option booléenne ; si elle ne figure pas, la légende ne sera pas indiquée
\end{tabular}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patroncylindre
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patroncylindre
\end{tikzpicture}
\end{center}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patroncylindre[legende,r=1,h=1]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patroncylindre[legende,r=1,h=1]
\end{tikzpicture}
\end{center}


\subsection{Pyramide à base régulière}

\begin{lstlisting}
\begin{tikzpicture}
\patronpyramreg[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{n}&=& nombre de côtés du polygone de base (par défaut : 3)\\
\texttt{r}&=& rayon du cercle circonscrit au polygone de base (par défaut : 3 cm)\\
\texttt{h}&=& hauteur de la pyramide (par défaut : 5 cm)\\
\texttt{legende}&:& option booléenne ; si elle ne figure pas, la légende ne sera pas indiquée
\end{tabular}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronpyramreg
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patronpyramreg
\end{tikzpicture}
\end{center}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronpyramreg[legende,r=2,h=4]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patronpyramreg[legende,r=2,h=4]
\end{tikzpicture}
\end{center}

\subsection{Prisme à base régulière}

\begin{lstlisting}
\begin{tikzpicture}
\patronprismereg[<options>]
\end{tikzpicture}
\end{lstlisting}

\bigskip

\begin{tabular}{rcl}
\texttt{n}&=& nombre de côtés du polygone de base (par défaut : 3)\\
\texttt{r}&=& rayon du cercle circonscrit au polygone de base (par défaut : 3 cm)\\
\texttt{h}&=& hauteur du prisme (par défaut : 5 cm)\\
\texttt{legende}&:& option booléenne ; si elle ne figure pas, la légende ne sera pas indiquée\\
\texttt{pos}&=& position de la face du haut dans le patron (par défaut, cette valeur vaut 1). \\
& & Ici, vous pouvez mettre un nombre de 1 à n.\\
\end{tabular}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronprismereg
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patronprismereg
\end{tikzpicture}
\end{center}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronprismereg[legende,r=2,h=4,n=5]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patronprismereg[legende,r=2,h=4,n=5]
\end{tikzpicture}
\end{center}

\newpage

\begin{lstlisting}
\begin{tikzpicture}
\patronprismereg[r=1,h=2,n=6,pos=2]
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\patronprismereg[r=1,h=2,n=6,pos=2]
\end{tikzpicture}
\end{center}

\section{Juxtaposition de figures}

Par rapport à la version initiale du package, j'ai choisi de placer les commandes de constructions géométriques dans un environnement TiKZ explicitement pour pouvoir mélanger des figures.

\subsection{Patron et solide côte-à-côte}

\begin{lstlisting}
\begin{tikzpicture}
\begin{scope}
\cone[incolor=purple!20,bordercolor=purple,coefopaq=0.3,incl=0.1,rayon=2,
hauteur=3,name,sommet=A,centre=B,poscentre=right,scalecentre=3]
\end{scope}
\begin{scope}[xshift=8cm,yshift=3cm]
\patroncone[legende,r=2,h=3]
\end{scope}
\end{tikzpicture}
\end{lstlisting}

\medskip

\begin{center}
\begin{tikzpicture}
\begin{scope}
\cone[incolor=purple!20,bordercolor=purple,coefopaq=0.3,incl=0.1,rayon=2,hauteur=3,
name,sommet=A,centre=B,poscentre=right,scalecentre=3]
\end{scope}
\begin{scope}[xshift=8cm,yshift=3cm]
\patroncone[legende,r=2,h=3]
\end{scope}
\end{tikzpicture}
\end{center}

\subsection{Juxtaposition de deux solides}

\begin{minipage}{.3\textwidth}
\begin{tikzpicture}
\begin{scope}
\cone[incolor=green!20,bordercolor=green!50!black,coefopaq=0.3,
incl=0.1,rayon=2,hauteur=3,scalecentre=3]
\end{scope}
\begin{scope}[xshift=2cm,yshift=-2cm]
\boule[incolor=green!20,bordercolor=green!50!black,coefopaq=.3]
\end{scope}
\end{tikzpicture}
\end{minipage}
\begin{minipage}{.7\textwidth}
\begin{lstlisting}
\begin{tikzpicture}
\begin{scope}
\cone[incolor=green!20,bordercolor=green!50!black,
coefopaq=0.3,incl=0.1,rayon=2,hauteur=3,scalecentre=3]
\end{scope}
\begin{scope}[xshift=2cm,yshift=-2cm]
\boule[incolor=green!20,bordercolor=green!50!black,
coefopaq=.3]
\end{scope}
\end{tikzpicture}
\end{lstlisting}
\end{minipage}

\section{Historique de l'extension}

\arrayrulecolor{red!50!black}
\begin{tabularx}{\linewidth}{|>{\ttfamily\arraybackslash}Sl>{\ttfamily\arraybackslash\columncolor{red!10}}SlX|}
\hline
28/06/2011 & Version V1.01& Version initiale.\\
\hline
05/05/2013 & Version V1.02 & ajout de l'environnement \og pasbox \fg{} et de la commande \texttt{\textbackslash breakbox}.\\
\hline
05/05/2013 & Version V1.03 & ajout de l'option \texttt{notitle} dans la commande \texttt{env}.\\
\hline
07/05/2013 & Version V1.04 & ajout de l'option \texttt{notitlebreak} pour l'environnement \texttt{pasbox}  et pour la commande \textbackslash env.\\
\hline
06/07/2013 & Version V1.05 & ajout de l'option \texttt{notoc} pour l'environnement \texttt{pasbox} et pour la commande \textbackslash env.\\
& & modification de la valeur par défaut de l'option \texttt{toc} (par défaut, \texttt{toc=false} maintenant).\\
& & ajout de l'option \texttt{everytoc} lors de l'appel du package\\
& & ajout de l'option \textbackslash\verb+@+ifpackageloaded\{tikz\} dans le code (problème de compatibilité avec d'autres extensions)\\
& & ajout des styles \og demo \fg{} et \og thm \fg{} pour l'environnement \texttt{pasbox} et pour la commande \textbackslash env.\\
& & ajout de la commande \textbackslash itemclass et modification des styles de listes.\\
\hline
28/11/2013 & Version V1.06 & Ajout des environnements \og aretenir \fg, \og attention \fg{} et \og prerequis \fg, et de la commande \textbackslash bonus.\\
\hline
19/08/2014 & Version V1.07 & Ajout de l'option \og num \fg{} à la commande \textbackslash env et à l'environnement pasbox. Ajout de l'option \og autonum \fg{} à la commande \textbackslash chap.\\
\hline
10/11/2014 & Version V1.08 & Correction de 2 problèmes (\og Théorème \fg{} était mis avec un \og s \fg{} m\^eme au singulier et le mot \og ar\^ete \fg{} était mal codé dans les légendes de solides.\\
\hline
26/11/2014 & Version V1.09 & Amélioration du centrage du numéro de chapitre dans le cercle.\\
& & Amélioration de la commande \textbackslash definmot en choisissant automatiquement la couleur de l'environnement.\\
& & Réajustement des dimensions pour les titres et les environnements (defi, thm, ...).\\
& & correction du bug concernant l'option \og ant \fg{} lors de l'appel de l'extension.\\
\hline
26/11/2014 & Version V1.09b & Amélioration de la correction concernant la largeur des environnements (defi,thm,...).\\
\hline
27/11/2014 & Version V1.09c & Correction concernant l'option \og ant \fg{} (fonte en gras).\\
\hline
11/12/2014 & Version V1.09d & Correction concernant les environnements \texttt{aretenir} et \texttt{prerequis} (réajustement de la largeur).\\
& & Correctif de la commande \textbackslash\texttt{breakbox} (erreur de largeur)\\
\hline
\end{tabularx}

\section{Remarques et suggestions}

On m'a fait remarqué que je pourrais rendre automatique la liste à puces dans le cas où l'option \texttt{pluriel} était informé dans un environnement (thm, defi, ...).

Je n'ai pas souhaité cette automatisation car je pense que certaines personnes n'aimeraient pas cela.

\medskip

Si vous aussi vous souhaitez participer à l'évolution de cette extension, n'hésitez pas à m'envoyer un mail.
\end{document}
