Application that animates airplane flight control
$ git clone https://github.com/MATF-RS19/RS013-flight-control
$ qmake
$ make
$ ./FlightControl
Random flights are created automatically between airports. When multiple airplanes are trying to land at the same airport, the airport will create the landing order such that it minimizes the amount of fuel that is spent, by using the local search algorithm.
Different types of airplanes fly at different heights, and therefore cannot collide. Those who can collide will try to avoid collisions, but in some cases, help from the user is required. The log window will display notifications about flights, as well as display information about individual airplanes.
User can navigate the map using MOUSE WHEEL. Scrolling will zoom in or out, and holding theMOUSE WHEEL and moving the mouse will move the view.
User can select an airplane with LEFT CLICK. Pressing the F key gives the user full control over the selected airplane. Use ⇦ and ⇨ to steer and ⇩ to land (if an airport is selected the plane will land there). Pressing ⇧ switches back to auto-pilot.
User can select up to two airports with LEFT CLICK. Pressing 1 will send an airplane from the first selected airport to the other. User can change which type of airplane is created by pressing 2 and 3. Pressing the RIGHT CLICK while airport building is off will spawn an airplane at the cursor position and send it to selected airport (nearest one if no airport is selected).
Pressing the B key toggles airport building. While it is on, pressing the RIGHT CLICK will create a new airport at the cursor position. Name for the airport is set to whatever is in the text input box in the log window. Pressing D deletes all selected items. User can make both types of changes permanent by pressing the S key or clicking the 'Save' button on the log window.
- Qt5
- C++11