Commit Graph

126 Commits

Author SHA1 Message Date
f6209c669d
Remove camp field and better output 2020-11-15 11:48:48 +03:00
124920787c
Better street report 2020-11-15 01:42:17 +03:00
HeshamTB
92bbb0c099
Merge pull request #9 from EngOsamah/master 2020-11-15 01:31:34 +03:00
EngOsamah
0458ff143e maybe this is going to be phase one 2020-11-15 01:21:15 +03:00
Asaad Dadoush
bb46419ed3 Report 2020-11-14 21:27:32 +03:00
Asaad Dadoush
3e1b1f162c Add UID for Sedan / SUV / Truck 2020-11-14 16:31:43 +03:00
52ac0c702a
Merge branch 'movement2' 2020-11-14 02:43:43 +03:00
2eb6a96a23
Better movement.
- Move Vehicles from list
   in Makkah.
2020-11-14 02:37:57 +03:00
fe781f43b6
Better movement.
- Move Vehicles from list
   in Makkah.
2020-11-14 01:30:20 +03:00
392993a008
Cars move on top of each other 2020-11-13 22:35:52 +03:00
fac5ed0089 Major update
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-12 00:13:05 +03:00
62c8fb22fa Major update
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-12 00:12:59 +03:00
HeshamTB
cc64faf912
Merge pull request #6 from AsaadDadoush/master
add enum
2020-11-11 21:42:09 +03:00
Asaad Dadoush
6aabadd1f0 add enum 2020-11-11 21:35:18 +03:00
16ff81a44c update Vehicle and Campaign
- Added movment in vehicle.
   - Now Campaign sets Routes for
   it's Vehicles.
   - Fixed Array size of stdRoutes
   - Added getShortestRoute(Campaign)
   and getRoutesToDistrict(District)
   in MakkahCity

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-11 21:02:59 +03:00
f4bb5e6099
Prevent IndexOutOFBoundEx:
In genCivilVehicles(), the
    casting might step over
    the number of cars size
    of the array. So, use try
    catch blocks and skip in that
    case.
2020-11-11 14:26:41 +03:00
9fb653397f Make PDate refrence type rather then static members 2020-11-11 12:04:50 +03:00
be05e7f848
Method to make noise cars 2020-11-10 20:48:32 +03:00
b491eaf4ab Vehicle: calc distance to next
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 20:16:36 +03:00
92661695b1 Meeting work
Signed-off-by: HeshamTB <hishaminv@gmail.com>

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 20:16:11 +03:00
HeshamTB
83fddd5724
Merge pull request #4 from EngOsamah/master
Update
2020-11-10 17:18:27 +03:00
HeshamTB
f3258355fe
Merge branch 'master' into master 2020-11-10 17:06:28 +03:00
EngOsamah
2b037e40e8 Update 2020-11-10 16:45:35 +03:00
3fb2291b85
Note to review 2020-11-10 08:02:55 +03:00
fc6b93697c
Street: Add get remaining percent capacity() 2020-11-10 00:54:31 +03:00
96a1254ce3 Makkah: add all busses from camps to list
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:43:16 +03:00
0fb689a3a0 MakkahCity: Main simulation begins
- Defined static lists and arrays holding
	All object references.

	- Generate campaigns with random number range
	based on Area. This is based on estimate of
	real values and density of the Districts in
	Makkah.

	- Main loop is made and limited by
	PDate.isEnded() which is static variable
	indicates the end of the timeline.
	The incrementor is PDate.step(key,value)

	Simulation begins...

	- H.B.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:10:31 +03:00
d242489985 Campaign and Bus:
- Buses now have fixed vehicle length
	stored in STD_BUS_SIZE and are constructed
	without parameters.

	- Fixed generateBuses() in Campaign
	to not be public and used one in practice

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:05:58 +03:00
1bf7290dbf Street:
- Added getCombinedLength(). Returns
	sum of the length of each lane on street

	- Fixed addVehicle() condition to be relative
	to the provided vehicle plus padding

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:03:29 +03:00
7c9fd44070 Clean up TrafficPoliceCar and Changed CanBeGovtCar
Signed-off-by: HeshamTB <hishaminv@gmail.com>

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:02:08 +03:00
713e902e05 Route:
- Changed constructor to take
	Enums of District and Mashier
	as endpoint (start, end)

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-10 00:00:20 +03:00
6d0ea7654e PDate: fix stepping method to not step over sim timeline
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-09 23:57:28 +03:00
0bc231222a StreetNames:
Index values of streets

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-09 23:53:42 +03:00
d3d515a818
Street capacity() calculation:
Add padding for each car except the first
	and last (i.e. number of cars - 2).
2020-11-09 12:42:32 +03:00
af5548734d Fix error in Camp.addVehicle()
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-09 12:30:18 +03:00
11252e7996
Ammar: Street.addVehicle() and capacity(): 2020-11-09 12:24:51 +03:00
4dde706eda Camp: Vehicles list points to null:
vehicles is null, thus, can't use .add() in generateBusses()
	First make an Object in generateBusses() then fill with add().
	Or make generateBusses() only add to an instance member
	(i.e. construct with ref with instance)

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-09 11:57:35 +03:00
HeshamTB
182e57afb4
Merge pull request #3 from EngOsamah/master
راجع TODO
2020-11-09 10:01:09 +03:00
EngOsamah
d4d91a4f17 راجع TODO 2020-11-08 23:35:39 +03:00
eb9223b2c2 Campaign check for valid leave date
Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-08 18:26:06 +03:00
3ae32ebb11 Rework PDate
- Make PDate a static class or all
   methods and members are static to
   be used in the main implementation
   (Makkah)

   - isValidTime(Date) method to check
   if date is within simulation timeline
2020-11-08 18:22:55 +03:00
1f884631ee PDate class:
- Manege timeline of simulation

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-08 17:26:25 +03:00
HeshamTB
4110fc97ac
Merge pull request #2 from AsaadDadoush/master
Edit
2020-11-08 16:40:37 +03:00
Asaad Dadoush
074cb0a59b TODO Tasks 2020-11-08 16:34:10 +03:00
Asaad Dadoush
da8ef062ae add capcity method , canTakeVehicles , addVehicle 2020-11-08 16:03:44 +03:00
Asaad Dadoush
d63335beb8 Add Class 2020-11-08 03:05:52 +03:00
asaad
8c17a87105 Added classes: 2020-11-08 02:38:37 +03:00
asaad
be384ebf76 SUV Class 2020-11-08 02:31:20 +03:00
b70bad851e Use encapsulation principal in CivilVehicle
Since every occurrence of collide should set
	currentAccident and broken for all cars, use
	setCurrentAccident() for both cars in collide()
	which sets both values.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-07 12:35:35 +03:00
e65d3d16e9 Add isDone() boolean method to Accident
isDone() checks all invovlved CivilVehicles
	in Accident instance. If any car has reference
	to 'this' then it is still not done.
	Done would be true if fix() of each car is invoked.

Signed-off-by: HeshamTB <hishaminv@gmail.com>
2020-11-07 12:33:01 +03:00