-\documentclass{article}
+\documentclass[a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[charter]{mathdesign}
\usepackage[margin=2.5cm]{geometry}
\usepackage{xspace}
-\usepackage{xcolor}
+\usepackage[svgnames]{xcolor}
\usepackage{multicol}
\usepackage{listings}
\usepackage{showexpl} % examples
\usepackage{mflogo}
\usepackage[frenchb]{babel}
+\usepackage{tikz}
+\usepackage{url}
+
+\renewcommand{\ttdefault}{lmtt}
\definecolor{hellgelb}{rgb}{1,1,0.85}
language=metapost,%
float=hbp,%
basicstyle=\ttfamily\small, %
- identifierstyle=\color{colIdentifier}, %
- keywordstyle=\color{colKeys}, %
- stringstyle=\color{colString}, %
+ identifierstyle=\color{DarkSlateGrey}, %
+ keywordstyle=\color{DarkBlue}\itshape, %
+ stringstyle=\color{Green}, %
commentstyle=\color{colComments}, %
columns=flexible, %
tabsize=4, %
breaklines=true, %
breakautoindent=true,
captionpos=b,
- xleftmargin=1em
+ xleftmargin=1em,
+ sensitive=true,
+ morekeywords=[7]{Point,Vecteur},
+ keywordstyle=[7]\color{FireBrick},
+ morekeywords=[8]{gddO,gddA,gddB,gddC,gddT},
+ keywordstyle=[8]\color{Sienna},
+ morekeywords=[9]{PointImp},
+ keywordstyle=[9]\color{Olive}
}
\lstset{explpreset={pos=t,wide=false,rframe={},preset=\centering}}
\lstdefinestyle{syntax}{backgroundcolor=\color{blue!15},numbers=none,xleftmargin=0pt,xrightmargin=0pt,
\newcommand\foncGDD[1]{\texttt{#1}}
\begin{document}
+%% === Page de garde ===================================================
+\thispagestyle{empty}
+\begin{tikzpicture}[remember picture, overlay]
+ \node[below right, shift={(-4pt,4pt)}] at (current page.north west) {%
+ \includegraphics{fond.pdf}%
+ };
+\end{tikzpicture}%
+
+\noindent
+\includegraphics{mp-gdd}\\
+{\large Paquet \MP{} pour des figures de géométrie plane}\\[1cm]
+\parbox{0.6\textwidth}{
+\includegraphics[scale=0.86]{figure.pdf}
+}\hfill
+\parbox{0.4\textwidth}{\Large\raggedleft
+ \textbf{Contributeurs}\\
+ Maxime \textsc{Chupin}\\
+ Jean-Michel \textsc{Sarlat}
+}
+\vfill
+\begin{center}
+Version 0.1 du 25 septembre 2011\\
+\url{http://melusine.eu.org/syracuse/G/mp-gdd/}
+\end{center}
+%% == Page de garde ====================================================
+\newpage
\section{Introduction}
l'extension \fichier{graph.mp} présent dans toutes les bonnes
distributions \TeX.
+\section{Objectif}
+
+\mpgdd a été écrit avec le but de proposer des macros \MP{} permettant
+de réaliser une figure de géométrie \emph{en collant} d'assez près
+à une description impérative:
+\begin{quote}\itshape
+Soit \(A\) le point de coordonnées (2,3).\\
+Soit \(B\) le point de coordonnées (4,5).\\
+Trace la droite \((A,B)\).\\
+....
+\end{quote}
+Dans ce cadre, les objets géométriques sont le plus souvent nommés
+(\(A\), \(B\), etc.) ou désignés par leur nature et leurs attributs
+(droite \((A,B)\), etc.). Pour ne pas avoir à dépasser ce mode de
+description, en particulier pour éviter d'avoir à déclarer le
+\emph{type} de ces objets, le choix a été fait de les identifier par
+un \emph{index}\footnote{Le type \typeMP{numeric}, qui est le type par
+défaut dans \MP, ne demande pas de déclaration préalable.} dans des
+tables qui en précisent les caractéristiques.
+
+\textbf{Note} -- À ce jour, l'objectif n'est pas atteint, le
+développement est loin d'être achevé; il est encore nécessaire de
+faire appel à des commandes \MP{} ou à des \emph{macros
+intermédiaires} pour décrire une figure. Cela évoluera sans doute
+avec le temps, le temps de trouver une syntaxe satisfaisante...
+
\section{Principe général de fonctionnement}
-\mpgdd utilise des tables comme structure principale.
-Chaque objet est numéroté via le compteur \variable{gddO}, son
-type\footnote{Les types sont propres à \mpgdd et seront décrit plus
- tard.} est stocké dans la table \variable{gddT[]} à la place
-\variable{gddT[gddO]}. Les propriétés des objets sont définies dans, là
-encore, des tables de type \typeMP{numeric} qui sont
-\variable{gddA[]}, \variable{gddB[]},\dots,\variable{gddF[]}.
+\mpgdd utilise des tables comme structure principale. Chaque objet est
+numéroté via le compteur \variable{gddO}, son type\footnote{Les types
+sont propres à \mpgdd et seront décrits plus tard.} est stocké dans
+la table \variable{gddT[]} à la place \variable{gddT[gddO]}. Les
+propriétés des objets sont définies dans, là encore, des tables de
+type \typeMP{numeric} qui sont \variable{gddA[]}, \variable{gddB[]},
+\dots, \variable{gddF[]}.
Par exemple, pour un \typeGDD{Point} (type \mpgdd), la première coordonnée
se trouve dans \variable{gddA[]} et la seconde dans \variable{gddB[]}
Nous allons ici décrire chaque type de l'extension \mpgdd ainsi que
leurs propriétés respectives.
-\paragraph{Le type \typeGDD{point}} Ce type correspond au point de
+\paragraph{Le type \typeGDD{Point}} Ce type correspond au point de
l'espace euclidien. Pour être plus clair voici la fonction principale
pour créer un tel objet :
%
fait sur des \typeMP{numeric}s. En effet, pour déclarer un
\typeGDD{point}, il suffit d'écrire
\begin{lstlisting}
-A = point(2,3);
+A = Point(2,3);
\end{lstlisting}
\variable{A} prend alors la valeur courante de \variable{gddO}. C'est
-l'identifiant de du point.
+l'identifiant du point.
-\paragraph{Le type \typeGDD{vecteur}} Ce type correspond aux vecteurs
+\paragraph{Le type \typeGDD{Vecteur}} Ce type correspond aux vecteurs
définis à l'aide de deux points de l'espace euclidien. La fonction
créatrice d'un tel objet est celle-ci
%