diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 01 - The Arrival Process.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 01 - The Arrival Process.docx new file mode 100644 index 0000000000000000000000000000000000000000..3d2e31d90e7194186741fdeba8c9d90e4b4c124f Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 01 - The Arrival Process.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 02 - The Multiple Server Queue.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 02 - The Multiple Server Queue.docx new file mode 100644 index 0000000000000000000000000000000000000000..5d9064884772fc4e5b51ddc8e3bae287f389842e Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 02 - The Multiple Server Queue.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 03 - Server with Reneges.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 03 - Server with Reneges.docx new file mode 100644 index 0000000000000000000000000000000000000000..7bdfa0720f6358104b2994011af683807046ca6b Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 03 - Server with Reneges.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 04 - Transfer Line.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 04 - Transfer Line.docx new file mode 100644 index 0000000000000000000000000000000000000000..10fec58e9c034aff50433e40923d44bb61587901 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 04 - Transfer Line.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 05 - Two Crane Berths.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 05 - Two Crane Berths.docx new file mode 100644 index 0000000000000000000000000000000000000000..a91574dcc69242c82303703ba899025c83314656 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 05 - Two Crane Berths.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 06 - Movers and MoverManagers.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 06 - Movers and MoverManagers.docx new file mode 100644 index 0000000000000000000000000000000000000000..c174d84d220e0308afa431f37ea3fe0707d20350 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/ComputerAssignment 06 - Movers and MoverManagers.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Electronic Submission.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Electronic Submission.docx new file mode 100644 index 0000000000000000000000000000000000000000..4a85437723f8f8d6b527feddb80509636fbe32eb Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Electronic Submission.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Written Submission.pdf b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Written Submission.pdf new file mode 100644 index 0000000000000000000000000000000000000000..8592c05ebc09a7307df99871ce271e77b91f75b4 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Sample Written Submission.pdf differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Simple Movers Output.txt b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Simple Movers Output.txt new file mode 100644 index 0000000000000000000000000000000000000000..85640332d61f945fe8b26935d1fa6d2e6feb1865 --- /dev/null +++ b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/Simple Movers Output.txt @@ -0,0 +1,411 @@ +SimpleMover.1 + maxSpeed = 30.0 + initialLocation = Point2D.Double[0.0, 250.0] +SimplePathMoverManager.2 + path[0] = Point2D.Double[200.0, 0.0] + path[1] = Point2D.Double[-200.0, 250.0] + path[2] = Point2D.Double[200.0, 250.0] + path[3] = Point2D.Double[0.0, 250.0] + startOnRun = true +SimpleMover.3 + maxSpeed = 40.0 + initialLocation = Point2D.Double[0.0, 150.0] +SimplePatrolMoverManager.4 + path[0] = Point2D.Double[0.0, 300.0] + path[1] = Point2D.Double[0.0, -100.0] + startOnRun = true +SimpleMover.5 + maxSpeed = 50.0 + initialLocation = Point2D.Double[0.0, 0.0] +SimpleRandomMoverManager.6 + startOnRun = true + coordinateGenerator[0] = Uniform (-250.000, 250.000) + coordinateGenerator[1] = Uniform (-100.000, 300.000) +** Event List 0 -- Starting Simulation ** +0.0000 Run <SimpleMover.1> +0.0000 Run <SimplePathMoverManager.2> +0.0000 Run <SimpleMover.3> +0.0000 Run <SimplePatrolMoverManager.4> +0.0000 Run <SimpleMover.5> +0.0000 Run <SimpleRandomMoverManager.6> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- Starting Simulation ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[0.0, 250.0] +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] +<SimpleMover.1> destination: Point2D.Double[NaN, NaN] +<SimpleMover.1> startMoveTime: 0.0 +Time: 0.0000 CurrentEvent: Run [1] +** Event List 0 -- ** +0.0000 Run <SimplePathMoverManager.2> +0.0000 Run <SimpleMover.3> +0.0000 Run <SimplePatrolMoverManager.4> +0.0000 Run <SimpleMover.5> +0.0000 Run <SimpleRandomMoverManager.6> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimplePathMoverManager.2> next: 0 +Time: 0.0000 CurrentEvent: Run [2] +** Event List 0 -- ** +0.0000 Run <SimpleMover.3> +0.0000 Run <SimplePatrolMoverManager.4> +0.0000 Run <SimpleMover.5> +0.0000 Run <SimpleRandomMoverManager.6> +0.0000 Start <SimplePathMoverManager.2> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> lastStopLocation: Point2D.Double[0.0, 150.0] +<SimpleMover.3> velocity: Point2D.Double[0.0, 0.0] +<SimpleMover.3> destination: Point2D.Double[NaN, NaN] +<SimpleMover.3> startMoveTime: 0.0 +Time: 0.0000 CurrentEvent: Run [3] +** Event List 0 -- ** +0.0000 Run <SimplePatrolMoverManager.4> +0.0000 Run <SimpleMover.5> +0.0000 Run <SimpleRandomMoverManager.6> +0.0000 Start <SimplePathMoverManager.2> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimplePatrolMoverManager.4> next: 0 +Time: 0.0000 CurrentEvent: Run [4] +** Event List 0 -- ** +0.0000 Run <SimpleMover.5> +0.0000 Run <SimpleRandomMoverManager.6> +0.0000 Start <SimplePathMoverManager.2> +0.0000 Start <SimplePatrolMoverManager.4> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: Run [5] +** Event List 0 -- ** +0.0000 Run <SimpleRandomMoverManager.6> +0.0000 Start <SimplePathMoverManager.2> +0.0000 Start <SimplePatrolMoverManager.4> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: Run [6] +** Event List 0 -- ** +0.0000 Start <SimplePathMoverManager.2> +0.0000 Start <SimplePatrolMoverManager.4> +0.0000 Start <SimpleRandomMoverManager.6> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: Start [1] +** Event List 0 -- ** +0.0000 Start <SimplePatrolMoverManager.4> +0.0000 Start <SimpleRandomMoverManager.6> +0.0000 MoveTo {Point2D.Double[200.0, 0.0]} <SimplePathMoverManager.2> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: Start [2] +** Event List 0 -- ** +0.0000 Start <SimpleRandomMoverManager.6> +0.0000 MoveTo {Point2D.Double[200.0, 0.0]} <SimplePathMoverManager.2> +0.0000 MoveTo {Point2D.Double[0.0, 300.0]} <SimplePatrolMoverManager.4> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: Start [3] +** Event List 0 -- ** +0.0000 MoveTo {Point2D.Double[200.0, 0.0]} <SimplePathMoverManager.2> +0.0000 MoveTo {Point2D.Double[0.0, 300.0]} <SimplePatrolMoverManager.4> +0.0000 MoveTo {Point2D.Double[158.66502991411835, 299.62435979396105]} <SimpleRandomMoverManager.6> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.1> destination: Point2D.Double[NaN, NaN] => Point2D.Double[200.0, 0.0] +Time: 0.0000 CurrentEvent: MoveTo {Point2D.Double[200.0, 0.0]} [1] +** Event List 0 -- ** +0.0000 MoveTo {Point2D.Double[0.0, 300.0]} <SimplePatrolMoverManager.4> +0.0000 MoveTo {Point2D.Double[158.66502991411835, 299.62435979396105]} <SimpleRandomMoverManager.6> +0.0000 StartMove {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} <SimpleMover.1> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> destination: Point2D.Double[NaN, NaN] => Point2D.Double[0.0, 300.0] +Time: 0.0000 CurrentEvent: MoveTo {Point2D.Double[0.0, 300.0]} [2] +** Event List 0 -- ** +0.0000 MoveTo {Point2D.Double[158.66502991411835, 299.62435979396105]} <SimpleRandomMoverManager.6> +0.0000 StartMove {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} <SimpleMover.1> +0.0000 StartMove {SimpleMover.3 (0.000, 150.000) [0.000, 0.000]} <SimpleMover.3> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: MoveTo {Point2D.Double[158.66502991411835, 299.62435979396105]} [3] +** Event List 0 -- ** +0.0000 StartMove {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} <SimpleMover.1> +0.0000 StartMove {SimpleMover.3 (0.000, 150.000) [0.000, 0.000]} <SimpleMover.3> +0.0000 StartMove {SimpleMover.5 (0.000, 0.000) [0.000, 0.000]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.1> startMoveTime: 0.0 => 0.0 +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[18.74085142663273, -23.426064283290913] +Time: 0.0000 CurrentEvent: StartMove {SimpleMover.1 (0.000, 250.000) [18.741, -23.426]} [1] +** Event List 0 -- ** +0.0000 StartMove {SimpleMover.3 (0.000, 150.000) [0.000, 0.000]} <SimpleMover.3> +0.0000 StartMove {SimpleMover.5 (0.000, 0.000) [0.000, 0.000]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (0.000, 250.000) [18.741, -23.426]} <SimpleMover.1> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> startMoveTime: 0.0 => 0.0 +<SimpleMover.3> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[0.0, 40.0] +Time: 0.0000 CurrentEvent: StartMove {SimpleMover.3 (0.000, 150.000) [0.000, 40.000]} [2] +** Event List 0 -- ** +0.0000 StartMove {SimpleMover.5 (0.000, 0.000) [0.000, 0.000]} <SimpleMover.5> +3.7500 EndMove {SimpleMover.3 (0.000, 150.000) [0.000, 40.000]} <SimpleMover.3> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (0.000, 250.000) [18.741, -23.426]} <SimpleMover.1> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 0.0000 CurrentEvent: StartMove {SimpleMover.5 (0.000, 0.000) [23.399, 44.187]} [3] +** Event List 0 -- ** +3.7500 EndMove {SimpleMover.3 (0.000, 150.000) [0.000, 40.000]} <SimpleMover.3> +6.7808 EndMove {SimpleMover.5 (0.000, 0.000) [23.399, 44.187]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (0.000, 250.000) [18.741, -23.426]} <SimpleMover.1> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> lastStopLocation: Point2D.Double[0.0, 150.0] => Point2D.Double[0.0, 300.0] +<SimpleMover.3> velocity: Point2D.Double[0.0, 40.0] => Point2D.Double[0.0, 0.0] +<SimplePatrolMoverManager.4> next: 0 => 1 +Time: 3.7500 CurrentEvent: EndMove {SimpleMover.3 (0.000, 300.000) [0.000, 0.000]} [1] +** Event List 0 -- ** +3.7500 MoveTo {Point2D.Double[0.0, -100.0]} <SimplePatrolMoverManager.4> +6.7808 EndMove {SimpleMover.5 (87.746, 165.701) [23.399, 44.187]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (70.278, 162.152) [18.741, -23.426]} <SimpleMover.1> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> destination: Point2D.Double[0.0, 300.0] => Point2D.Double[0.0, -100.0] +Time: 3.7500 CurrentEvent: MoveTo {Point2D.Double[0.0, -100.0]} [4] +** Event List 0 -- ** +3.7500 StartMove {SimpleMover.3 (0.000, 300.000) [0.000, 0.000]} <SimpleMover.3> +6.7808 EndMove {SimpleMover.5 (87.746, 165.701) [23.399, 44.187]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (70.278, 162.152) [18.741, -23.426]} <SimpleMover.1> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> startMoveTime: 0.0 => 3.75 +<SimpleMover.3> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[0.0, -40.0] +Time: 3.7500 CurrentEvent: StartMove {SimpleMover.3 (0.000, 300.000) [0.000, -40.000]} [4] +** Event List 0 -- ** +6.7808 EndMove {SimpleMover.5 (87.746, 165.701) [23.399, 44.187]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (70.278, 162.152) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 300.000) [0.000, -40.000]} <SimpleMover.3> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 6.7808 CurrentEvent: EndMove {SimpleMover.5 (158.665, 299.624) [0.000, 0.000]} [2] +** Event List 0 -- ** +6.7808 MoveTo {Point2D.Double[5.1771862199530005, -47.38683607429266]} <SimpleRandomMoverManager.6> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (127.079, 91.152) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 178.767) [0.000, -40.000]} <SimpleMover.3> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 6.7808 CurrentEvent: MoveTo {Point2D.Double[5.1771862199530005, -47.38683607429266]} [5] +** Event List 0 -- ** +6.7808 StartMove {SimpleMover.5 (158.665, 299.624) [0.000, 0.000]} <SimpleMover.5> +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (127.079, 91.152) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 178.767) [0.000, -40.000]} <SimpleMover.3> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 6.7808 CurrentEvent: StartMove {SimpleMover.5 (158.665, 299.624) [-20.226, -45.727]} [5] +** Event List 0 -- ** +10.0000 Stop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (127.079, 91.152) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 178.767) [0.000, -40.000]} <SimpleMover.3> +14.3697 EndMove {SimpleMover.5 (158.665, 299.624) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 10.0000 CurrentEvent: Stop [1] +** Event List 0 -- ** +10.0000 OrderStop <SimplePatrolMoverManager.4> +10.6719 EndMove {SimpleMover.1 (187.409, 15.739) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 50.000) [0.000, -40.000]} <SimpleMover.3> +14.3697 EndMove {SimpleMover.5 (93.556, 152.423) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +Time: 10.0000 CurrentEvent: OrderStop [1] +** Event List 0 -- ** +10.0000 Stop {SimpleMover.3 (0.000, 50.000) [0.000, -40.000]} <SimpleMover.3> +10.6719 EndMove {SimpleMover.1 (187.409, 15.739) [18.741, -23.426]} <SimpleMover.1> +13.7500 EndMove {SimpleMover.3 (0.000, 50.000) [0.000, -40.000]} <SimpleMover.3> +14.3697 EndMove {SimpleMover.5 (93.556, 152.423) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.3> lastStopLocation: Point2D.Double[0.0, 300.0] => Point2D.Double[0.0, 50.0] +<SimpleMover.3> velocity: Point2D.Double[0.0, -40.0] => Point2D.Double[0.0, 0.0] +Time: 10.0000 CurrentEvent: Stop {SimpleMover.3 (0.000, 50.000) [0.000, 0.000]} [1] +** Event List 0 -- ** +10.6719 EndMove {SimpleMover.1 (187.409, 15.739) [18.741, -23.426]} <SimpleMover.1> +14.3697 EndMove {SimpleMover.5 (93.556, 152.423) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[0.0, 250.0] => Point2D.Double[200.0, 0.0] +<SimpleMover.1> velocity: Point2D.Double[18.74085142663273, -23.426064283290913] => Point2D.Double[0.0, 0.0] +<SimplePathMoverManager.2> next: 0 => 1 +Time: 10.6719 CurrentEvent: EndMove {SimpleMover.1 (200.000, 0.000) [0.000, 0.000]} [3] +** Event List 0 -- ** +10.6719 MoveTo {Point2D.Double[-200.0, 250.0]} <SimplePathMoverManager.2> +14.3697 EndMove {SimpleMover.5 (79.967, 121.700) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.1> destination: Point2D.Double[200.0, 0.0] => Point2D.Double[-200.0, 250.0] +Time: 10.6719 CurrentEvent: MoveTo {Point2D.Double[-200.0, 250.0]} [6] +** Event List 0 -- ** +10.6719 StartMove {SimpleMover.1 (200.000, 0.000) [0.000, 0.000]} <SimpleMover.1> +14.3697 EndMove {SimpleMover.5 (79.967, 121.700) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> + ** End of Event List -- ** + +<SimpleMover.1> startMoveTime: 0.0 => 10.671873729054747 +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[-25.43994912015264, 15.899968200095401] +Time: 10.6719 CurrentEvent: StartMove {SimpleMover.1 (200.000, 0.000) [-25.440, 15.900]} [6] +** Event List 0 -- ** +14.3697 EndMove {SimpleMover.5 (79.967, 121.700) [-20.226, -45.727]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> +26.3952 EndMove {SimpleMover.1 (200.000, 0.000) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 14.3697 CurrentEvent: EndMove {SimpleMover.5 (5.177, -47.387) [0.000, 0.000]} [4] +** Event List 0 -- ** +14.3697 MoveTo {Point2D.Double[-232.29182581417263, 296.9878137111664]} <SimpleRandomMoverManager.6> +20.0000 Stop <SimpleRandomMoverManager.6> +26.3952 EndMove {SimpleMover.1 (105.929, 58.795) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 14.3697 CurrentEvent: MoveTo {Point2D.Double[-232.29182581417263, 296.9878137111664]} [7] +** Event List 0 -- ** +14.3697 StartMove {SimpleMover.5 (5.177, -47.387) [0.000, 0.000]} <SimpleMover.5> +20.0000 Stop <SimpleRandomMoverManager.6> +26.3952 EndMove {SimpleMover.1 (105.929, 58.795) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 14.3697 CurrentEvent: StartMove {SimpleMover.5 (5.177, -47.387) [-28.384, 41.162]} [7] +** Event List 0 -- ** +20.0000 Stop <SimpleRandomMoverManager.6> +22.7359 EndMove {SimpleMover.5 (5.177, -47.387) [-28.384, 41.162]} <SimpleMover.5> +26.3952 EndMove {SimpleMover.1 (105.929, 58.795) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 20.0000 CurrentEvent: Stop [2] +** Event List 0 -- ** +20.0000 OrderStop <SimpleRandomMoverManager.6> +22.7359 EndMove {SimpleMover.5 (-154.636, 184.372) [-28.384, 41.162]} <SimpleMover.5> +26.3952 EndMove {SimpleMover.1 (-37.307, 148.317) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 20.0000 CurrentEvent: OrderStop [2] +** Event List 0 -- ** +20.0000 Stop {SimpleMover.5 (-154.636, 184.372) [-28.384, 41.162]} <SimpleMover.5> +22.7359 EndMove {SimpleMover.5 (-154.636, 184.372) [-28.384, 41.162]} <SimpleMover.5> +26.3952 EndMove {SimpleMover.1 (-37.307, 148.317) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +Time: 20.0000 CurrentEvent: Stop {SimpleMover.5 (-154.636, 184.372) [0.000, 0.000]} [2] +** Event List 0 -- ** +26.3952 EndMove {SimpleMover.1 (-37.307, 148.317) [-25.440, 15.900]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[200.0, 0.0] => Point2D.Double[-200.0, 250.0] +<SimpleMover.1> velocity: Point2D.Double[-25.43994912015264, 15.899968200095401] => Point2D.Double[0.0, 0.0] +<SimplePathMoverManager.2> next: 1 => 2 +Time: 26.3952 CurrentEvent: EndMove {SimpleMover.1 (-200.000, 250.000) [0.000, 0.000]} [5] +** Event List 0 -- ** +26.3952 MoveTo {Point2D.Double[200.0, 250.0]} <SimplePathMoverManager.2> + ** End of Event List -- ** + +<SimpleMover.1> destination: Point2D.Double[-200.0, 250.0] => Point2D.Double[200.0, 250.0] +Time: 26.3952 CurrentEvent: MoveTo {Point2D.Double[200.0, 250.0]} [8] +** Event List 0 -- ** +26.3952 StartMove {SimpleMover.1 (-200.000, 250.000) [0.000, 0.000]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> startMoveTime: 10.671873729054747 => 26.395175615815752 +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[30.0, 0.0] +Time: 26.3952 CurrentEvent: StartMove {SimpleMover.1 (-200.000, 250.000) [30.000, 0.000]} [8] +** Event List 0 -- ** +39.7285 EndMove {SimpleMover.1 (-200.000, 250.000) [30.000, 0.000]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[-200.0, 250.0] => Point2D.Double[200.0, 250.0] +<SimpleMover.1> velocity: Point2D.Double[30.0, 0.0] => Point2D.Double[0.0, 0.0] +<SimplePathMoverManager.2> next: 2 => 3 +Time: 39.7285 CurrentEvent: EndMove {SimpleMover.1 (200.000, 250.000) [0.000, 0.000]} [6] +** Event List 0 -- ** +39.7285 MoveTo {Point2D.Double[0.0, 250.0]} <SimplePathMoverManager.2> + ** End of Event List -- ** + +<SimpleMover.1> destination: Point2D.Double[200.0, 250.0] => Point2D.Double[0.0, 250.0] +Time: 39.7285 CurrentEvent: MoveTo {Point2D.Double[0.0, 250.0]} [9] +** Event List 0 -- ** +39.7285 StartMove {SimpleMover.1 (200.000, 250.000) [0.000, 0.000]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> startMoveTime: 26.395175615815752 => 39.72850894914909 +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[-30.0, 0.0] +Time: 39.7285 CurrentEvent: StartMove {SimpleMover.1 (200.000, 250.000) [-30.000, 0.000]} [9] +** Event List 0 -- ** +46.3952 EndMove {SimpleMover.1 (200.000, 250.000) [-30.000, 0.000]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[200.0, 250.0] => Point2D.Double[0.0, 250.0] +<SimpleMover.1> velocity: Point2D.Double[-30.0, 0.0] => Point2D.Double[0.0, 0.0] +<SimplePathMoverManager.2> next: 3 => 4 +Time: 46.3952 CurrentEvent: EndMove {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} [7] +** Event List 0 -- ** +46.3952 Stop <SimplePathMoverManager.2> + ** End of Event List -- ** + +Time: 46.3952 CurrentEvent: Stop [3] +** Event List 0 -- ** +46.3952 OrderStop <SimplePathMoverManager.2> + ** End of Event List -- ** + +Time: 46.3952 CurrentEvent: OrderStop [3] +** Event List 0 -- ** +46.3952 Stop {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} <SimpleMover.1> + ** End of Event List -- ** + +<SimpleMover.1> lastStopLocation: Point2D.Double[0.0, 250.0] => Point2D.Double[0.0, 250.0] +<SimpleMover.1> velocity: Point2D.Double[0.0, 0.0] => Point2D.Double[0.0, 0.0] +Time: 46.3952 CurrentEvent: Stop {SimpleMover.1 (0.000, 250.000) [0.000, 0.000]} [3] +** Event List 0 -- ** + << empty >> + ** End of Event List -- ** \ No newline at end of file diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment1.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment1.docx new file mode 100644 index 0000000000000000000000000000000000000000..7b02d16b602a096514e014be5c3b23b8dbc5c7aa Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment1.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment1Solution.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment1Solution.docx similarity index 100% rename from examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment1Solution.docx rename to examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment1Solution.docx diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment2.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment2.docx new file mode 100644 index 0000000000000000000000000000000000000000..3438b6b508cabaef0f81a26525edcd776358b009 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment2.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment2Solution.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment2Solution.docx similarity index 100% rename from examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment2Solution.docx rename to examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment2Solution.docx diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment3.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment3.docx new file mode 100644 index 0000000000000000000000000000000000000000..84dcb3e749691a115e27448eb857935410f3f54a Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment3.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment3Solution.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment3Solution.docx similarity index 100% rename from examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment3Solution.docx rename to examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment3Solution.docx diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment4.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment4.docx new file mode 100644 index 0000000000000000000000000000000000000000..87b2dda8f10d6796662153d05fe605dda2f7f780 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment4.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment4Solution.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment4Solution.docx similarity index 100% rename from examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment4Solution.docx rename to examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment4Solution.docx diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment5.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment5.docx new file mode 100644 index 0000000000000000000000000000000000000000..4ce1abec915850b5cded414e1e462c16e80eac87 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment5.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment5Solution.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment5Solution.docx similarity index 100% rename from examples/src/SimkitOpenDis7Examples/documentation/WrittenAssignment5Solution.docx rename to examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment5Solution.docx diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment6.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment6.docx new file mode 100644 index 0000000000000000000000000000000000000000..6564483b505cfae3fd505de5a543881cb21afe3a Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment6.docx differ diff --git a/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment7_2022.docx b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment7_2022.docx new file mode 100644 index 0000000000000000000000000000000000000000..492f048c54c74345ff7b7dc742738a87eab24aa0 Binary files /dev/null and b/examples/src/SimkitOpenDis7Examples/documentation/MV3302/WrittenAssignment7_2022.docx differ