d92b03ad26b87d85f77286f785777f894f4dc3d7
[mp-gdd.git] / doc / mp-gdd-doc.tex
1 \documentclass{article}
2 \usepackage[utf8]{inputenc}
3 \usepackage[charter]{mathdesign}
4 \usepackage[margin=2.5cm]{geometry}
5 \usepackage{xspace}
6 \usepackage{multicol}
7 \usepackage{listings}
8 \usepackage{mflogo}
9 \usepackage[frenchb]{babel}
10
11 \newcommand\mpgdd{\texttt{mpgdd}\xspace}
12 \newcommand\fichier[1]{\texttt{#1}}
13 \newcommand\variable[1]{\texttt{#1}}
14 \newcommand\typeMP[1]{\texttt{#1}}
15 \newcommand\typeGDD[1]{\texttt{#1}}
16
17 \begin{document}
18
19 \section{Introduction}
20
21 \mpgdd est un ensemble d'outils pour la géométrie plane avec \MP. Cet
22 ensemble se compose de plusieurs fichiers :
23
24 \begin{enumerate}
25 \item \fichier{gdd.mp} : c'est le fichier principal, il contient
26 les structures et fonctions générales.
27 \item \fichier{gdd-arc.mp} :
28 contient tout ce qui concerne les arcs de cercles.
29 \item \fichier{gdd-c2d.mp} :
30 contient tout ce qui concerne les courbes du second degré.
31 \item \fichier{gdd-fct.mp} :
32 contient quelques fonctions mathématiques usuelles.
33 \item \fichier{gdd-lbl.mp} :
34 contient les fonctions relatives aux labels.
35 \item \fichier{gdd-plt.mp} :
36 contient des fonctions facilitant la représentation de fonctions
37 mathématiques.
38 \item \fichier{gdd-rep.mp}
39 contient différents outils pour le tracé de figure dans un repère.
40 \item \fichier{gdd-tra.mp}
41 contient les fonction permettant de gérer la transparence (code
42 emprunté à Anthony \bsc{Phan}).
43 \end{enumerate}
44
45 Nous allons, dans la suite, décrire plus en détails chacune de ces
46 fonctions. Il est à noté aussi que certaines fonctions s'appuient sur
47 l'extension \fichier{graph.mp} présent dans toutes les bonnes
48 distributions \TeX.
49
50 \section{Principe général de fonctionnement}
51
52 \mpgdd utilise des tables comme structure principale.
53 Chaque objet est numéroté via le compteur \variable{gddO}, son
54 type\footnote{Les types son propres à \mpgdd et seront décrit plus
55 tard.} est stocké dans la table \variable{gddT[]} à la place
56 \variable{gddT[gddO]}. Les propriétés des objets sont définies dans, là
57 encore, des tables de type \typeMP{numeric} qui sont
58 \variable{gddA[]}, \variable{gddB[]},\dots,\variable{gddF[]}.
59
60 Par exemple, pour un \typeGDD{Point} (type \mpgdd), la première coordonnée
61 se trouve dans \variable{gddA[]} et la seconde dans \variable{gddB[]}
62 (les autres table ne sont pas utilisées pour un tel objet).
63
64 Il y a deux tables particulières \variable{gddP[]} qui est du type
65 \typeMP{path} et \variable{gddS[]} qui est du type
66 \typeMP{string}. Nous verrons plus tard quelle est leur utilité.
67
68 Bien entendu, lors d'une utilisation classique de \mpgdd, l'appel à
69 toutes ces tables n'est pas chose courante.
70
71 \section{Les types}
72
73 On peut, avec \mpgdd, construire plusieurs types
74 d'objets. Rappelons le, tout est \emph{objet} dont le nombre est
75 enregistré dans la variable \variable{gddO}. Le type d'objet, lui, est
76 stocké dans la table \variable{gddT[]}, et les tables \variable{gddA[]}
77 à \variable{gddF[]} contiennent les propriétés des objets.
78
79 Nous allons ici décrire chaque type de l'extension \mpgdd ainsi que
80 leurs propriétés respectives.
81
82 \paragraph{Le type \typeGDD{point}} Ce type correspond au point de
83 l'espace euclidien. Pour être plus clair voici la fonction principale
84 pour créer un tel objet :
85
86 \begin{lstlisting}
87 vardef Point(expr a,b) =
88 gddT[incr gddO] = "point";
89 gddA[gddO] = a; gddB[gddO] = b; gddO
90 enddef;
91 \end{lstlisting}
92
93
94
95 \section{Fonctions générales}
96
97 \subsection{Relatives aux \typeGDD{Point}s}
98
99 \subsection{Un peu de géométrie}
100
101
102
103
104 \end{document}

Licence Creative Commons Les fichiers de Syracuse sont mis à disposition (sauf mention contraire) selon les termes de la
Licence Creative Commons Attribution - Pas d’Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International.