Projet "Wireworld" - Vacances
Etant donné que nous n'avions pas terminé notre projet lors des séances d'ateliers, nous l'avions travaillé et terminé pendant les vacances.
- Nous avions finalisé les circuits logiques que nous avions commencé en atelier.
- Nous avons entamé le projet de ville. En effet, chacun a proposé un plan de ville, au brouillon. Ce fut finalement le mien qui fut retenu. Celle-ci se présente en 3 parties principales :
- Un parc paisible avec un lac et un jardin (Partie Nord/Ouest)
- Des logements et une école (Partie Nord/Est)
- Des attractions fortes en sensations (Partie Sud)
Ces différentes parties de la ville sont reliées entre elles par une route principale.
J'ai produit les matrices matérialisant les différentes parties de la ville, ce qui m'amena à modifier nos fonctions de bases. En effet, les fonctions de bases étaient conçues pour manipuler uniquement des matrices carrées. Cela s'est très vite révélé extrêmement ennuyeux lorsque l'on avait à faire à des matrices de grande dimension (la matrice finale de dimensions 70 x 67 !!) : y faire des manipulations, en plus en connexion ssh, apportait énormément de lags et de bugs. J'ai donc pensé à optimiser nos fonctions et y intégrer partout 2 paramètres (longueur, largeur) au lieu d'un seul (taille). Les modifications à faire dans les conditions des fonctions "voisins", "changementsdetats" etc se sont révélées assez simple, d'autant plus que j'ai bénéficié de l'aide de mes camarades.
Concernant les immeubles de la Partie Nord/Ouest, j'ai voulu y mettre en place un système d'éclairage dynamique : les pièces "allumées" au temps "t" s'éteignent au bout d'une certaine période "x", et inversement, les pièces sombres s'éclairent au bout de "t+x" temps. En écrivant une fonction que j'ai souhaité intégré dans les conditions de la fonction "changementsdetats", j'ai malheureusement rencontré une erreur de compilation à cause d'une variable globale non prise en compte. J'ai du donc abandonner l'idée.
Pour la route principale, nous avions eu l'idée d'intégrer un ou des circuits logiques afin de mettre en place une situation de carambolage ou pour éviter la division d'un électron lors d'une intersection, mais ce fut une nouvelle fois un échec.
Néanmoins, nous avons pu faire fonctionner correctement notre Grande Roue et notre Montagnes Russes, ainsi que d'aranger, à notre guise, le parc dans la Partie Nord/Est.
- Nous avons, chacun notre tour, rédigé une partie du rapport final. Nous nous sommes ensuite répartis les tâches pour la soutenance à l'orale. Chacun m'envoya son contenu afin que je puisse m'occuper des transparents.