En la v1 se hizo toda la lógica que debe pasar unos test proporcionados por el profesor.
La practica consiste en hacer un simulador donde unos coches con un itinerario de cruces van de carretera a carrtera de un cruce al ultimo de sus cruces en su itinerario. Además las carreteras tendrán un tiempo que pordrá afectar la velocidad máxima a la que los coches puedan ir. A esto se le incluye un contador de CO2 a las carreteras donde los coches emiten una cantidad de CO2 dependiendo de su clase de CO2, si la carretera supera la cantidad limite de CO2 que puede tener reducirá la velocidad de los coches.
El simulador usará JSONs para manejar información, es decir, para cargar los coches, carretera... cogerá un JSON con un formato, la aplicación transforma el JSON en los objetos correspondientes para hacer la simulación. Por último, la simulación se hará mediante ticks, cada tick es un ciclo update de todos los objetos de la simulación cargada.
En la v2 se hizo la GUI de la aplicación con Java Swing. La GUI consiste de una ventana con una toolbar con botones:
- Archivo: escoge un fichero JSON para cargar la simulación con los eventos correspondientes
- CO2 change: cambia la clase de CO2 de un coche en un tick especifico (Abre un dialogo)
- Weather change: cambia el tiempo de una carretera en un tick especifico (Abre un dialogo)
- Run: ejecuta x ticks de la simulación (x es el número que ponga en el spinner)
- Stop: para la simulación
- Spinner ticks: para cambiar la cantidad de ticks que se ejecutan
- Cerrar En la ventana se ven otras ventanas, a la izquierda estan todas la tablas de de eventos, vehiculos, carretera y crucs de la siulación, a la derecha están los 2 mapas:
- Map: el mapa de los cruces y carreteras puestos es sus posiciones
- Map by road: el mapa del estado de las carreteras
Por último abajo del todo tenemos una barra de estado que muestra el tick en el cual la simulación actualmente está y el útmimo evento añadido.

Note
Esta práctica es opcional no entra en el examen ni se evaluará
En la v3 se harán los threads, es decir, los hilos, para poder ejecutar tanto el java swing como la lógica del simulador al "mismo" tiempo.
Se puede consulatar de forma libre, no hay copyright
Caution
Por favor no copiar nada del reopsitorio, es un trabajo de la universidad sin ningún valor para personas fuera de esta. Para aquellos que sean universitarios tened en cuenta que copiar de aquí no tiene ningún valor, es mejor intentar sacar soluciones propias a estos trabajos.