From 0a70da9bec354efa03cf14f259d8709633a57b90 Mon Sep 17 00:00:00 2001 From: Eideen Date: Sat, 17 Apr 2021 01:12:28 +0200 Subject: [PATCH] Update Rapport --- rapport/chapters/chapitre1.tex | 3 +- rapport/chapters/chapitre2.tex | 11 ++- rapport/chapters/chapitre4.tex | 19 ++++- rapport/chapters/chapitre5.tex | 6 +- rapport/main.tex | 138 ++++++++++++++++----------------- 5 files changed, 95 insertions(+), 82 deletions(-) diff --git a/rapport/chapters/chapitre1.tex b/rapport/chapters/chapitre1.tex index f00495f..f59e62c 100644 --- a/rapport/chapters/chapitre1.tex +++ b/rapport/chapters/chapitre1.tex @@ -1,7 +1,6 @@ \chapter{Introduction} -%\placeholderwarning + \section{Sujet et consiges} -%\paragraph{(optionnel) Pourquoi ce sujet est intéressant?} Ce projet a pour objectif de réaliser une application appliquant des principes de programmation orientée objet en language de programmation Java. Nous avons eut le choix entre 6 sujets différents et, après études des pro-positions, notre choix s’est finalement porté sur le "Générateurs de floresvidéos-ludiques" et donc la réalisation d’un simulateur de L-système végétalproduisant une image 2D et 3D de l’objet par le biais de règles de réécritures. \info{Pour cela nous avions quelques consignes a respecter : diff --git a/rapport/chapters/chapitre2.tex b/rapport/chapters/chapitre2.tex index c9c9eba..b6b1c99 100644 --- a/rapport/chapters/chapitre2.tex +++ b/rapport/chapters/chapitre2.tex @@ -3,9 +3,12 @@ \section{Principe et fonctionnement} \subsection{Qu'est-ce que le le L-Système ?} - +Le L-système \footnote{Le système de Lindebmayer}, inventé en 1968 par un biologiste hongrois du nom de Aristid Lindenmayer, est un système de réécriture \footnote{Modèle de calcul transformant des objets syntaxiques comme des mots, des termes ou encore des graphes en appliquant des règles données.} utilisé pour la modélisation de processus de developpement et de prolifération de bactéries ou de plantes. \subsection{Comment fonctionne-t-il ?} +Ce système de réécriture fonctionne par le biais de plusieurs spécificités : +\begin{itemize} + \item Un alphabet : celui-ci représente l'ensemble des variables utilisées pour former des mots dans le L-système. + \item +\end{itemize} -\section{Exemple d'utilisation} - - +\section{Exemple d'utilisation} \ No newline at end of file diff --git a/rapport/chapters/chapitre4.tex b/rapport/chapters/chapitre4.tex index 2a09535..a798e67 100644 --- a/rapport/chapters/chapitre4.tex +++ b/rapport/chapters/chapitre4.tex @@ -1,19 +1,30 @@ \chapter{Elements techniques} + \section{Parser}\label{sec:parser} + \section{Moteur de réécriture} + \section{Moteur graphique}\label{src:interface3d} + \section{Interface principale}\label{sec:menu} + \subsection{Composition de l'interface} + \paragraph{L'interface} - utilisateur de notre logiciel à été conçue grâce à la bibliothèqye \textit{Swing} de Java. Elle se compose de trois classes, une contenant la fenêtre principale \textbf{(MainFrame)}, un autre permettant de créer des onglets \textbf{(Tab)} et une troisième classe gérant les événements \textbf{(Listener)}. + utilisateur de notre logiciel à été conçue grâce à la bibliothèque \textit{Swing} de Java. Elle se compose de trois classes, une contenant la fenêtre principale \classe{MainFrame}, un autre permettant de créer des onglets \classe{Tab} et une troisième classe gérant les événements \classe{Listener}. + \subsection{Classes de l'interface} + \subsubsection{MainFrame} -\paragraph{La classe MainFrame} est une classe héritant de la classe JFrame de Swing. Elle permet de créer une fenêtre de base, de taille prédéfinie dans laquelle peuvent être placés des composants graphiques. Elle comprend aussi un bouton de fermeture qui, une fois cliqué, permet l'arrêt du programme.\\ + +\paragraph{La classe \classe{MainFrame}} est une classe héritant de la classe JFrame de Swing. Elle permet de créer une fenêtre de base, de taille prédéfinie dans laquelle peuvent être placés des composants graphiques. Elle comprend aussi un bouton de fermeture qui, une fois cliqué, permet l'arrêt du programme.\\ Elle comporte ainsi une instance de la classe JTabbedPane \label{jtpane}, un conteneur graphique donc le but est de disposer ses composants sous la forme d'onglets. \subsubsection{Tab} -\paragraph{La classe Tab } est une classe héritant de la classe JPanel de Swing. JPanel est un composant de base dans lequel il est possible d'ajouter d'autres composants graphiques. Les intances de Tab crées sont ensuites ajoutées par la classe MainFrame à son composant de la classe JTabbedPane \ref{jtpane}. + +\paragraph{La classe \classe{Tab} } est une classe héritant de la classe JPanel de Swing. JPanel est un composant de base dans lequel il est possible d'ajouter d'autres composants graphiques. Les intances de Tab crées sont ensuites ajoutées par la classe MainFrame à son composant de la classe JTabbedPane \ref{jtpane}. \subsubsection{Listener} -\paragraph{La classe Listener} est une classe implémentant certaines classes Listener de Swing \textbf{(ActionListener, KeyListener et MouseWheelListener)}. Elle permet de capter toutes les actions effectuées par l'utilisateur et d'appeler les méthodes correspondantes des classes de l'interface. Elle permet ainsi de créer de nouveaux onglets \textbf{(Nouvelles instances de Tab)} mais aussi d'en fermer ou bien encore de lancer la génération du modèle. + +\paragraph{La classe \classe{Listener}} est une classe implémentant certaines classes Listener de Swing (\classe{ActionListener, KeyListener et MouseWheelListener}). Elle permet de capter toutes les actions effectuées par l'utilisateur et d'appeler les méthodes correspondantes des classes de l'interface. Elle permet ainsi de créer de nouveaux onglets (Nouvelles instances de Tab) mais aussi d'en fermer ou bien encore de lancer la génération du modèle. \section{Pair ou un tuple a 2 entrées en java} \ No newline at end of file diff --git a/rapport/chapters/chapitre5.tex b/rapport/chapters/chapitre5.tex index 6b3e494..a41c6ed 100644 --- a/rapport/chapters/chapitre5.tex +++ b/rapport/chapters/chapitre5.tex @@ -41,13 +41,13 @@ Pour naviguer dans l'espace 3D, vous pouvez utiliser votre clavier ainsi que vot \item \textbf{E} $\xrightarrow{} Tourner \ la \ caméra \ à \ droite$ \item \textbf{W} $\xrightarrow{} Prendre \ de \ la \ hauteur$ \item \textbf{X} $\xrightarrow{} Perde \ de \ la \ hauteur$ -\end{itemize} + \end{itemize} \paragraph{Liste des commandes à la souris :} -\begin{itemize} + \begin{itemize} \item \textbf{Mollette Avant} $\xrightarrow{}$ Zommer \item \textbf{Mollette Arrière} $\xrightarrow{}$ Dézoomer \item \textbf{Clic Droit} $\xrightarrow{}$ Maintenir puis bouger la souris pour changer l'orientation de la caméra - + \end{itemize} \problem{Vous ne pouvez pas utiliser 2 touches ou plus en même temps pour naviguer par exemple Z et D pour aller la direction nord-est est impossible, tourner votre caméra dans la direction où vous voulez aller puis appuyer sur Z.} diff --git a/rapport/main.tex b/rapport/main.tex index 16065b1..557d82a 100644 --- a/rapport/main.tex +++ b/rapport/main.tex @@ -31,64 +31,64 @@ \newcommand{\button}[1]{\textit{\fbox{#1}}} \newcommand{\classe}[1]{\textit{\textbf{#1}}} \newmdenv[ - rightline=false, - topline=false, - bottomline=false, - backgroundcolor=BurntOrange!5, - fontcolor=BrickRed, - linecolor=Red, - linewidth=1pt]{problemenv} - +rightline=false, +topline=false, +bottomline=false, +backgroundcolor=BurntOrange!5, +fontcolor=BrickRed, +linecolor=Red, +linewidth=1pt]{problemenv} + \newcommand{\problem}[1]{ - \begin{problemenv} - \sffamily - #1 - \end{problemenv} +\begin{problemenv} +\sffamily +#1 +\end{problemenv} } \newmdenv[ - rightline=false, - topline=false, - bottomline=false, - backgroundcolor=ForestGreen!5, - fontcolor=OliveGreen, - linecolor=Green, - linewidth=1pt]{resultenv} +rightline=false, +topline=false, +bottomline=false, +backgroundcolor=ForestGreen!5, +fontcolor=OliveGreen, +linecolor=Green, +linewidth=1pt]{resultenv} \newcommand{\result}[1]{ - \begin{resultenv} - \sffamily - #1 - \end{resultenv} +\begin{resultenv} +\sffamily +#1 +\end{resultenv} } \newmdenv[ - rightline=false, - topline=false, - bottomline=false, - backgroundcolor=Cyan!5, - fontcolor=Blue, - linecolor=NavyBlue, - linewidth=1pt]{infoenv} +rightline=false, +topline=false, +bottomline=false, +backgroundcolor=Cyan!5, +fontcolor=Blue, +linecolor=NavyBlue, +linewidth=1pt]{infoenv} \newcommand{\info}[1]{ - \begin{infoenv} - \sffamily - #1 - \end{infoenv} +\begin{infoenv} +\sffamily +#1 +\end{infoenv} } \newcommand{\img}[1]{ - \begin{figure}[H] - \centering - \includegraphics[width=0.8\textwidth]{#1} - \end{figure} +\begin{figure}[H] + \centering + \includegraphics[width=0.8\textwidth]{#1} +\end{figure} } \newcommand{\imgwlegend}[2]{ \begin{figure}[H] \centering - \includegraphics[width=0.8\textwidth]{#1} + \includegraphics[width=0.8\textwidth]{#1} \caption{#2} \end{figure} } @@ -102,7 +102,7 @@ \renewenvironment{abstract}[1] {\bigskip\selectlanguage{#1}% \begin{center}\bfseries\abstractname\end{center}} - {\par\bigskip} +{\par\bigskip} % Gestion des keywords @@ -119,7 +119,7 @@ \titlehead{ \includegraphics[width=0.25\textwidth]{pics/LOGO-UNICAEN_V-2.1-N.png} \hfill -%\includegraphics[width=0.25\textwidth]{pics/} + %\includegraphics[width=0.25\textwidth]{pics/} } \subject{ \small @@ -147,28 +147,28 @@ \small \hfill\\ Antonin \bsc{Boyon}\\ - Thomas \bsc{Lalong}\\ - Quentin \bsc{Legot}\\ - Arthur \bsc{Page} + Thomas \bsc{Lalong}\\ + Quentin \bsc{Legot}\\ + Arthur \bsc{Page} } \date{} \newcommand{\placeholderwarning}{ - \problem{CECI EST UN PLACEHOLDER. À REMPLACER AVEC LES DONNÉES INDIQUÉES.} +\problem{CECI EST UN PLACEHOLDER. À REMPLACER AVEC LES DONNÉES INDIQUÉES.} } \makeglossary %redaction guide -> https://docs.google.com/document/d/1YfxGWD0GbRxs-OLxRxoA8Sg8OuVYTSKK8HX1ScFYlFA \begin{document} - + \maketitle \pagenumbering{Roman} - + \tableofcontents \listoffigures \clearpage - + %\begin{abstractpage} % \begin{abstract}{french} % \lipsum[1] @@ -181,16 +181,16 @@ % %\keywords{test lol boup incroyable rassuré} %\end{abstractpage} - - - + + + \pagenumbering{arabic} - \info{Placeholder info} - \problem{Placeholder problem} - \result{Placeholder result} - - \input{chapters/chapitre1.tex} - + \info{Placeholder info} + \problem{Placeholder problem} + \result{Placeholder result} + + \input{chapters/chapitre1.tex} + \input{chapters/chapitre2.tex} \input{chapters/chapitre3.tex} \input{chapters/chapitre4.tex} @@ -200,18 +200,18 @@ %\input{chapters/conclusion.tex} \cleardoublepage \pagebreak - + \pagenumbering{roman} \chapter{Annexes} - \section{Remerciement} - Triss Jacquiot pour le modèle de rapport bien plus beau que l'original - \addcontentsline{toc}{section}{6.2\quad{}Bibliographie} - \begin{thebibliography}{} - \bibitem{ano05} - A. Nonymous et al.\ 2005 - \bibitem{oe04} - A.N. Other \& S.O.M. Ebody 2004 - \end{thebibliography} - - + \section{Remerciement} + Triss Jacquiot pour le modèle de rapport bien plus beau que l'original + \addcontentsline{toc}{section}{6.2\quad{}Bibliographie} + \begin{thebibliography}{} + \bibitem{ano05} + A. Nonymous et al.\ 2005 + \bibitem{oe04} + A.N. Other \& S.O.M. Ebody 2004 + \end{thebibliography} + + \end{document} \ No newline at end of file