A user-friendly epidemic simulator for experimenting on the effect of different spread-prevention policies.
The simulation panes show the simulated world. The humans are represented by the circles. The colour of the circles indicates the health status of the given human. The statistics table shows the status counts for the humans in real time. The colour of the counts on each row indicates the corresponding health status of any given human in the simulation panes and area in the stacked area chart. The area chart shows how the health status count for the simulation population changes over time, where the colour of the area corresponds to the status being counted. The simulation player is used to run, pause or reset the current simulation. The parameters are for specifying the given conditions in a simulator. When you have changed the parameters to desired values, you press the generate button to load the new simulation.The software was written using the Gradle template in IntelliJ IDEA with JDK 11 (For further specifications see build.gradle).
Have interesting ideas for developing this project? Here is the class diagram.
The icon for our application was made by Ddara (CC-SA 3.0).
-
Stevens, Harry. “These Simulations Show How to Flatten the Coronavirus Growth Curve.” The Washington Post, WP Company, 14 Mar. 2020, www.washingtonpost.com/graphics/2020/world/corona-simulator/.
-
3Blue1Brown. “Simulating an epidemic.” Youtube, 27 Mar. 2020, https://www.youtube.com/watch?v=gxAaO2rsdIs&t=36s.
-
JavaFX Tutorials - These tutorials were amazing, Marco Jakob did an outstanding job with them.
-
JavaFX animation experiments - A bouncing ball simulation project done by James D. Provides a large backbone for the wall collision response and model class.
-
JavaFX pane clipping - This tutorial helped us with overcoming the issue of JavaFX panes not having a straightforward clipping property, thanks Christopher Nahr.
-
Distributing JavaFX desktop - This article by Adam was super useful for creating a JavaFX app installer.
-
JFoenix - JFoenix controls provided an elegant and professional styling for our UI controls (Apache 2.0).
-
BootstrapFX - BootstrapFX makes up most of the Epi's CSS styling.