Compare commits
5 Commits
master
...
phase1-gui
Author | SHA1 | Date | |
---|---|---|---|
|
a73667f29b | ||
452b9497a9 | |||
|
adb148fb43 | ||
524085ae09 | |||
acff65eab3 |
14
package.sh
14
package.sh
@ -1,14 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
GIT=$(command -v git)
|
|
||||||
HEAD=$(command -v head)
|
|
||||||
CUT=$(command -v cut)
|
|
||||||
|
|
||||||
JAR_ARTIFACT="out/artifacts/Hajj_simulation_jar/Hajj-simulation.jar"
|
|
||||||
|
|
||||||
if [ -z $"GIT" ] || [ -z $"HEAD" ] || [ -z $"CUT" ]; then
|
|
||||||
echo "Tools missing"
|
|
||||||
exit 1
|
|
||||||
else
|
|
||||||
tar -cvf Hajj-Simulation-$(git log | head -n1 | cut -d' ' -f2).tar.gz $JAR_ARTIFACT run.sh
|
|
||||||
fi
|
|
9
run.sh
9
run.sh
@ -1,9 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
jav=$(command -v java)
|
|
||||||
|
|
||||||
if [ -z "$jav" ]; then
|
|
||||||
>&2 echo "Can't find java installation"
|
|
||||||
else
|
|
||||||
java -jar out/artifacts/Hajj_simulation_jar/Hajj-simulation.jar
|
|
||||||
fi
|
|
@ -32,7 +32,6 @@ public class MakkahCity {
|
|||||||
private static final Thread t = new Thread(inputListener,"InputThread-Makkah");
|
private static final Thread t = new Thread(inputListener,"InputThread-Makkah");
|
||||||
private static boolean isAllRoutSet;
|
private static boolean isAllRoutSet;
|
||||||
private static final DataManeger dataManeger = new DataManeger();
|
private static final DataManeger dataManeger = new DataManeger();
|
||||||
private static volatile boolean done_flag;
|
|
||||||
//GUI
|
//GUI
|
||||||
private static boolean exit_flag;
|
private static boolean exit_flag;
|
||||||
private static boolean pause_flag;
|
private static boolean pause_flag;
|
||||||
@ -66,7 +65,6 @@ public class MakkahCity {
|
|||||||
generateCamps(District.ALMANSOOR, (int)getRandom(1600, 1800));
|
generateCamps(District.ALMANSOOR, (int)getRandom(1600, 1800));
|
||||||
generateCamps(District.ALHIJRA, (int)getRandom(1400, 1600));
|
generateCamps(District.ALHIJRA, (int)getRandom(1400, 1600));
|
||||||
|
|
||||||
Collections.shuffle(listOfCampaigns);
|
|
||||||
|
|
||||||
fillBusesToList();
|
fillBusesToList();
|
||||||
|
|
||||||
@ -213,10 +211,7 @@ public class MakkahCity {
|
|||||||
btnExit.setFont(new Font("Rockwell", Font.PLAIN, 16));
|
btnExit.setFont(new Font("Rockwell", Font.PLAIN, 16));
|
||||||
btnExit.setForeground(Color.white);
|
btnExit.setForeground(Color.white);
|
||||||
btnExit.setBounds(888, 623, 166, 29);
|
btnExit.setBounds(888, 623, 166, 29);
|
||||||
btnExit.addActionListener(actionEvent -> {
|
btnExit.addActionListener(actionEvent -> exit_flag = true);
|
||||||
if (pause_flag || done_flag) System.exit(0);
|
|
||||||
else exit_flag = true;
|
|
||||||
});
|
|
||||||
|
|
||||||
btnPause = new JButton("Pause");
|
btnPause = new JButton("Pause");
|
||||||
btnPause.setBackground(new Color(9,9,9));
|
btnPause.setBackground(new Color(9,9,9));
|
||||||
@ -421,14 +416,11 @@ public class MakkahCity {
|
|||||||
makkahFrame.setVisible(true);
|
makkahFrame.setVisible(true);
|
||||||
|
|
||||||
//Set Routes for Campaigns
|
//Set Routes for Campaigns
|
||||||
|
setRoutesForCampaigns(Mashier.ARAFAT);
|
||||||
while(!firstDayTimeMan.isEnded()) {
|
while(!firstDayTimeMan.isEnded()) {
|
||||||
checkInput();
|
checkInput();
|
||||||
|
|
||||||
if (!isAllRoutSet) {
|
|
||||||
isAllRoutSet = true;
|
|
||||||
setRoutesForCampaigns(Mashier.ARAFAT);
|
|
||||||
}
|
|
||||||
//Start of Every hour
|
|
||||||
if (firstDayTimeMan.getCurrentCalendar().get(Calendar.MINUTE) == 0){
|
if (firstDayTimeMan.getCurrentCalendar().get(Calendar.MINUTE) == 0){
|
||||||
System.out.println("\n\n" + getStreetsReport());
|
System.out.println("\n\n" + getStreetsReport());
|
||||||
updateStreetFrame();
|
updateStreetFrame();
|
||||||
@ -444,7 +436,6 @@ public class MakkahCity {
|
|||||||
Route route = vehicle.getRoute();
|
Route route = vehicle.getRoute();
|
||||||
double currentLocation = vehicle.getCurrentLocation();
|
double currentLocation = vehicle.getCurrentLocation();
|
||||||
if (vehicle.getCurrentStreet() == null &&
|
if (vehicle.getCurrentStreet() == null &&
|
||||||
firstDayTimeMan.getCurrentCalendar().get(Calendar.MINUTE) % 2 == 0 &&
|
|
||||||
route.getStreets()[0].capcityPoint(0,1000) < 1) {
|
route.getStreets()[0].capcityPoint(0,1000) < 1) {
|
||||||
vehicle.setCurrentStreet(route.getStreets()[0]);
|
vehicle.setCurrentStreet(route.getStreets()[0]);
|
||||||
}
|
}
|
||||||
@ -468,12 +459,10 @@ public class MakkahCity {
|
|||||||
if (isAllArrived() && allArrivedToArafatTime == null) allArrivedToArafatTime = (Date)currenttimeManager.getCurrentTime().clone();
|
if (isAllArrived() && allArrivedToArafatTime == null) allArrivedToArafatTime = (Date)currenttimeManager.getCurrentTime().clone();
|
||||||
firstDayTimeMan.step(Calendar.MINUTE, 1);
|
firstDayTimeMan.step(Calendar.MINUTE, 1);
|
||||||
lblDate.setText(currenttimeManager.getCurrentTime().toString());
|
lblDate.setText(currenttimeManager.getCurrentTime().toString());
|
||||||
//lblArrivedToArafatTime.setText(getDistTimeForLbl());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
currenttimeManager = lastDayTimeMan;
|
currenttimeManager = lastDayTimeMan;
|
||||||
System.out.println("\n***************FINSHIED ARAFAT DAY***************");
|
System.out.println("\n***************FINSHIED ARAFAT DAY***************");
|
||||||
//Collections.shuffle(listOfVehicles);
|
|
||||||
isAllRoutSet = false;
|
isAllRoutSet = false;
|
||||||
for (Vehicle vehicle : listOfVehicles) {
|
for (Vehicle vehicle : listOfVehicles) {
|
||||||
vehicle.setCurrentStreet(null);
|
vehicle.setCurrentStreet(null);
|
||||||
@ -484,13 +473,10 @@ public class MakkahCity {
|
|||||||
|
|
||||||
System.out.println("***************STARTING LAST DAY***************");
|
System.out.println("***************STARTING LAST DAY***************");
|
||||||
setRoutesForCampaigns(Mashier.MINA);
|
setRoutesForCampaigns(Mashier.MINA);
|
||||||
|
setRoutesForCampaigns(Mashier.MINA);
|
||||||
while(!lastDayTimeMan.isEnded()) {
|
while(!lastDayTimeMan.isEnded()) {
|
||||||
checkInput();
|
checkInput();
|
||||||
|
|
||||||
if (!isAllRoutSet) {
|
|
||||||
isAllRoutSet = true;
|
|
||||||
setRoutesForCampaigns(Mashier.MINA);
|
|
||||||
}
|
|
||||||
|
|
||||||
//Start of Every hour
|
//Start of Every hour
|
||||||
if (lastDayTimeMan.getCurrentCalendar().get(Calendar.MINUTE) == 0){
|
if (lastDayTimeMan.getCurrentCalendar().get(Calendar.MINUTE) == 0){
|
||||||
@ -531,10 +517,8 @@ public class MakkahCity {
|
|||||||
if (isAllArrived() && allArrivedToHotelsTime == null) allArrivedToHotelsTime = (Date)currenttimeManager.getCurrentTime().clone();
|
if (isAllArrived() && allArrivedToHotelsTime == null) allArrivedToHotelsTime = (Date)currenttimeManager.getCurrentTime().clone();
|
||||||
lastDayTimeMan.step(Calendar.MINUTE, 1);
|
lastDayTimeMan.step(Calendar.MINUTE, 1);
|
||||||
lblDate.setText(currenttimeManager.getCurrentTime().toString());
|
lblDate.setText(currenttimeManager.getCurrentTime().toString());
|
||||||
//lblArrivedToHotelsTime.setText(getDistTimeForLbl());
|
|
||||||
}
|
}
|
||||||
//When done show menu to analyze. Exit from menu too.
|
//When done show menu to analyze. Exit from menu too.
|
||||||
done_flag = true;
|
|
||||||
inputListener.pause();
|
inputListener.pause();
|
||||||
startMenu();
|
startMenu();
|
||||||
}
|
}
|
||||||
@ -740,7 +724,7 @@ public class MakkahCity {
|
|||||||
for (Campaign camp : listOfCampaigns){
|
for (Campaign camp : listOfCampaigns){
|
||||||
if(camp.getVehicles().get(0).getCurrentStreet() == null) {
|
if(camp.getVehicles().get(0).getCurrentStreet() == null) {
|
||||||
isAllRoutSet = false;
|
isAllRoutSet = false;
|
||||||
camp.setRoute(getBestRoute(camp, mashier));
|
camp.setRoute(getShortestRoute(camp, mashier));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -894,8 +878,7 @@ public class MakkahCity {
|
|||||||
private static void addCivilVehicleNoise() {
|
private static void addCivilVehicleNoise() {
|
||||||
|
|
||||||
for (Street street: stdStreet) {
|
for (Street street: stdStreet) {
|
||||||
if (street.getPercentRemainingCapacity() >= 80)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
int numOfSedan = (int)getRandom(10,15);
|
int numOfSedan = (int)getRandom(10,15);
|
||||||
int numOfSUV = (int)getRandom(5,9);
|
int numOfSUV = (int)getRandom(5,9);
|
||||||
@ -965,7 +948,6 @@ public class MakkahCity {
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
private static Route getBestRoute(Campaign campaign , Mashier mashier) {
|
private static Route getBestRoute(Campaign campaign , Mashier mashier) {
|
||||||
//ArrayList<Route> routes = (ArrayList<Route>) Arrays.asList(getRoutesToDistrict(campaign.getHotelDistrict()));
|
|
||||||
Route[] routes = getRoutesToDistrict(campaign.getHotelDistrict());
|
Route[] routes = getRoutesToDistrict(campaign.getHotelDistrict());
|
||||||
routes = sortRoutes(routes);
|
routes = sortRoutes(routes);
|
||||||
for (Route r : routes) {
|
for (Route r : routes) {
|
||||||
|
Loading…
Reference in New Issue
Block a user