This repository has been archived on 2024-05-19. You can view files and clone it, but cannot push or open issues or pull requests.
l-systems/report/document.tex

145 lines
4.8 KiB
TeX
Raw Normal View History

2024-04-26 21:05:19 +02:00
\DocumentMetadata{testphase = {phase-II,sec,toc,graphic,minipage,text}}
\documentclass[a4paper]{article}
2024-04-15 19:10:30 +02:00
\usepackage[T1]{fontenc} % encoding
\renewcommand{\familydefault}{\sfdefault} % sans-serif font
2024-05-03 02:04:23 +02:00
\usepackage[nopatch=footnote]{microtype} % better font looking
2024-04-15 19:10:30 +02:00
\usepackage[french]{babel} % langages
\frenchsetup{SmallCapsFigTabCaptions=false}
2024-04-26 21:05:19 +02:00
\usepackage{csquotes}
\MakeOuterQuote{"}
2024-04-15 19:10:30 +02:00
% Add \extra info to title
\makeatletter
\providecommand{\extra}[1]{
\apptocmd{\@author}{
\end{tabular}
\par\vspace*{0.7em}
\begin{tabular}[t]{c}
#1}{}{}
}
\makeatother
2024-05-05 19:37:13 +02:00
% Alias
\def\matthieu{Matthieu Tonino}
\def\anri{Anri Kennel}
\def\lsys{L-système}
2024-05-05 20:07:07 +02:00
\def\xml{\texttt{XML}}
\def\xsl{\texttt{XSL}}
\def\xsd{\texttt{XSD}}
\def\csv{\texttt{CSV}}
\def\svg{\texttt{SVG}}
2024-05-05 19:37:13 +02:00
% Métadonnées
2024-05-05 19:43:42 +02:00
\def\mytitle{Rapport de projet sur les~\lsys{}s}
2024-05-05 19:37:13 +02:00
\def\myauthor{\matthieu~et \anri}
\def\mysubject{Format de documents et XML}
\def\mylocation{Université Paris Cité}
2024-04-15 19:10:30 +02:00
\usepackage[
pdfauthor={\myauthor}, % author metadata
pdftitle={\mytitle}, % title metadata
pdfsubject={\mysubject}, % subject metadata
hidelinks, % clickable links in table of contents
]{hyperref}
\title{\mytitle}
\author{\matthieu\thanks{\matthieu : 00000000}~
et \anri\thanks{\anri : 22302653}}
\extra{\mysubject~$\cdot$ \mylocation}
\date{Année universitaire 2023-2024}
\begin{document}
\maketitle
\flushbottom
\tableofcontents
\clearpage
\section[Description]{Description du projet}
2024-05-05 20:07:07 +02:00
Le projet a pour but de générer un fichier \svg~en partant d'un \lsys~en
utilisant des transformations de \xml~par \xsl.
\subsection{Gestion de projet}
Nous avons écrit un \texttt{Makefile} pour nous faciliter le développement.
2024-05-05 20:15:14 +02:00
\subsubsection*{Une cible qui fait tout}
2024-05-05 20:07:07 +02:00
\begin{description}
2024-05-05 20:13:31 +02:00
\item[\texttt{make nom=snow n=3}] génère une image \svg~sous
\texttt{image.svg} qui correspond au \lsys~"snow" avec trois itérations.
2024-05-05 20:07:07 +02:00
\end{description}
2024-05-05 20:15:14 +02:00
\subsubsection*{Possibilité de faire une étape à la fois}
2024-05-05 20:07:07 +02:00
\begin{description}
\item[\texttt{make generation}] génère le fichier \xml~des \lsys{}s.
\item[\texttt{make tortue nom=koch5 n=4}] génère le fichier \xml~du
\lsys{}~"koch5" avec quatre itérations.
\item[\texttt{make traceur}] génère le fichier \xml~du traceur.
\item[\texttt{make svg}] génère le fichier \svg.
\end{description}
2024-05-05 20:15:14 +02:00
\subsubsection*{Utilitaires}
2024-05-05 20:07:07 +02:00
\begin{description}
\item[\texttt{make saxon}] télécharge Saxon pour la transformation
des fichiers \xml~via \xsl.
\item[\texttt{make clean}] supprime les fichiers générés.
\end{description}
2024-04-15 19:10:30 +02:00
\section{Explication des choix}
Dans cette partie, nous justifions nos décisions.
\subsection{Conception}
2024-04-15 19:13:08 +02:00
Nous avons choisi le langage de programmation Python pour réaliser la
2024-05-05 20:07:07 +02:00
première partie du projet parce que c'est un langage simple pour ce que nous
voulons faire, qu'il est doté d'une librairie qui permet de générer des fichiers
\xml~et que nous maitrisons tous les deux.
2024-04-15 19:10:30 +02:00
\subsection{Implémentation}
% TODO
2024-04-15 19:13:08 +02:00
2024-04-30 10:54:38 +02:00
\section{Répartition des tâches}
2024-05-05 20:07:07 +02:00
La conversion du fichier \csv~en fichier \xml, ainsi que la transformation
du fichier XML ainsi générer en fichier \xml~de la tortue ont étés faits
par \anri.
La conversion du fichier \xml~de la tortue en fichier \xml~du traceur a été
écrite par \matthieu.
2024-05-06 15:13:59 +02:00
La conversion du fichier \xml~du traceur en fichier \svg~a été écrite par \anri.
2024-05-05 20:07:07 +02:00
Chacun a écrit les fichiers \xsd~correspondant à ses fichiers \xml.
2024-04-30 10:54:38 +02:00
2024-04-15 19:10:30 +02:00
\subsection[Chronologie]{Chronologie des tâches}
2024-05-03 02:12:14 +02:00
\def\sp{\hspace{8pt}} % petit espace pour l'alignement
2024-04-15 21:22:04 +02:00
\begin{description}
2024-05-05 20:07:07 +02:00
\item[15 avril] Début de l'écriture du parseur \csv~vers \xml
\item[17 avril] Transformation du fichier \csv~vers \xml~achevé
\item[26 avril] Écriture du schéma \xml~validant le format du fichier \xml~généré
\item[27 avril] Écriture des fichiers \xsl~et \xsd~pour la tortue
\item[2 mai\sp] Écriture des fichiers \xsl~et \xsd~pour le traceur
\item[4 mai\sp] Écriture des fichiers \xsl~pour la conversion en \svg
2024-05-05 23:43:56 +02:00
\item[5 mai\sp] Essaie pour centrer les images \svg.
2024-05-06 15:13:59 +02:00
\item[6 mai\sp] Correction d'un bug pour \texttt{STORE} et \texttt{RESTORE}
\item[6 mai\sp] Gestion de déplacements pour les \svg
2024-05-06 16:22:57 +02:00
\item[6 mai\sp] Ajout de quelques \lsys{}s trouvé sur
\href{https://onlinetools.com/math/l-system-generator}{onlinetools.com}
2024-05-06 17:03:52 +02:00
et \href{https://anvaka.github.io/lsystem/}{anvaka/lsystem}
2024-04-15 21:22:04 +02:00
\end{description}
2024-04-15 19:10:30 +02:00
\section{Limitations}
Dans cette partie nous abordons les limitations de notre projet.
2024-05-05 20:07:07 +02:00
% \subsection{Difficultés rencontrées}
% TODO - uniquement si on a galéré
2024-04-15 19:10:30 +02:00
%\subsubsection*{Bugs}
% TODO - uniquement s'il y a des bugs
2024-05-06 15:13:59 +02:00
% Problème : quand `n' est grand, on a souvent des problèmes de mémoire
2024-04-15 19:10:30 +02:00
2024-04-30 10:54:38 +02:00
%\subsection{Omissions} % Ce qu'il manque
% TODO - uniquement s'il y a des omissions
2024-04-15 19:10:30 +02:00
\end{document}