Skip to content

My project which is the first exercise in Advanced Coding 2 (89211) course at BIU. See README for more details.

Notifications You must be signed in to change notification settings

matanm28/FlightSimulatorApp

Repository files navigation

FlightSimulatorApp

"Flight Simulator App"- third Mile-Stone main achievements:

1) Using the .NET Framework to create a GUI App for FlightGear.
2) Using MVVM architecture in a multi-threaded environment.
3) Implementing a TCP Client to send/receive and parse data from FlightGear.

More on the implementation process

This App has three main parts that run it, each part with its own designated responsibilities. The Model interacts with FlightGear via TCP connection, continuously send and read data request and notifies the relevant ViewModel when it's data changed. Next, the ViewModels process the changed data and notifies the Views about the changed data. the Views then react to the changed data accordingly, the data flows both from and to the Model. In the end, the aircraft inside FlightGear reacts to the joystick and handles being moved in our app.

FlightGearApp GUI

Compiling and Running

We provide a batch script to compile this project, you should use it! The batch file is called build_and_run and is located at the repository base folder. To properly use this batch script you should download the repository content without changing any files location and have Visual Studio 2019 installed, just double click the batch script and you're good to go :) (note that build_and_run should reside in the same folder as the FlightSimulatorApp.zip you downloaded). To properly use the app you should open FlightGear with the following settings: FlightGear settings

Python Script

We provide a python script called_dummyServer_ which acts as a FlightGear server. We used this dummyServer while building the project to speed up development. This script works with a default port number 5403 so you should run the main program with the same port number.

About

My project which is the first exercise in Advanced Coding 2 (89211) course at BIU. See README for more details.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published