Compare commits

..

No commits in common. 'f07fc76a6dbfe02f76571262050eba2f967f19a5' and '1034ee6731ac3e24c795f0efc3c0be6a8a0440ef' have entirely different histories.

Binary file not shown.

@ -87,7 +87,7 @@ public class App extends Application
if (datasets.get(i).getName().equals(session.getCurrentDataset())) {
currentDataset = datasets.get(i);
if (session.getFilteredAirlines().size() == 0 || session.getFilteredAirlines() == null) {
if (session.getFilteredAirlines().size() == 0) {
HashMap<Integer, String> airlinesHM = new HashMap<Integer, String>();
ArrayList<Airline> airlines = currentDataset.getAirlines();
for (int index = 0; index < airlines.size(); index++) {
@ -96,7 +96,7 @@ public class App extends Application
session.setFilteredAirlines(airlinesHM);
}
if (session.getFilteredAirports().size() == 0 || session.getFilteredAirports() == null) {
if (session.getFilteredAirports().size() == 0) {
HashMap<Integer, String> airportsHM = new HashMap<Integer, String>();
ArrayList<Airport> airports = currentDataset.getAirports();
for (int index = 0; index < airports.size(); index++) {
@ -105,14 +105,15 @@ public class App extends Application
session.setFilteredAirports(airportsHM);
}
if (session.getFilteredRoutes().size() == 0 || session.getFilteredRoutes() == null) {
if (session.getFilteredRoutes().size() == 0) {
HashMap<Integer, String> routesHM = new HashMap<Integer, String>();
ArrayList<Route> routes = currentDataset.getRoutes();
for (int index = 0; index < routes.size(); index++) {
routesHM.put(index, routes.get(index).getUniqueKey());
}
session.setFilteredRoutes(routesHM);
session.setFilteredAirports(routesHM);
}
//session.setFilteredRoutes();
}
}
}
@ -254,27 +255,6 @@ public class App extends Application
public void setCurrentDataset(Dataset dataset){
currentDataset = dataset;
session.setCurrentDataset(currentDataset.getName());
HashMap<Integer, String> airlinesHM = new HashMap<Integer, String>();
ArrayList<Airline> airlines = currentDataset.getAirlines();
for (int index = 0; index < airlines.size(); index++) {
airlinesHM.put(index, airlines.get(index).getName());
}
session.setFilteredAirlines(airlinesHM);
HashMap<Integer, String> airportsHM = new HashMap<Integer, String>();
ArrayList<Airport> airports = currentDataset.getAirports();
for (int index = 0; index < airports.size(); index++) {
airportsHM.put(index, airports.get(index).getName());
}
session.setFilteredAirports(airportsHM);
HashMap<Integer, String> routesHM = new HashMap<Integer, String>();
ArrayList<Route> routes = currentDataset.getRoutes();
for (int index = 0; index < routes.size(); index++) {
routesHM.put(index, routes.get(index).getUniqueKey());
}
session.setFilteredRoutes(routesHM);
}
/**

@ -113,11 +113,11 @@ public class AirlineGraphController extends Controller{
countries.put(airline.getCountryName(), 1);
}
}
int length = 10;
if (countries.size() < 10){
length = countries.size();
if (airlinesFiltered.length < 10){
length = airlinesFiltered.length;
}
for (int i = 0 ; i < length; i ++) {
int max = 0;
String maxCountry = null;
@ -130,6 +130,7 @@ public class AirlineGraphController extends Controller{
series.getData().add(new XYChart.Data<String, Integer>(maxCountry, max));
countries.remove(maxCountry);
}
countryGraph.getData().add(series);
}

@ -90,8 +90,8 @@ public class AirportGraphController extends Controller{
}
int length = 10;
if (countries.size() < 10){
length = countries.size();
if (airportsFiltered.length < 10){
length = airportsFiltered.length;
}
for (int i = 0 ; i < length; i ++) {
int max = 0;

@ -131,9 +131,9 @@ public class AirportRDController extends Controller{
/**
* Analyses the current data and creates a graph based on the data.
*
* @see PieGraphController
*/
public void analyse_Button(){ replaceSceneContent(SceneCode.AIRPORT_GRAPHS);}
public void analyse_Button(){ replaceSceneContent(SceneCode.AIRPORT_ANALYSER);}
public void airportSummaryButton() {
replaceSceneContent(SceneCode.AIRPORT_SUMMARY);

@ -7,7 +7,6 @@ import javafx.collections.FXCollections;
import javafx.collections.ListChangeListener;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
@ -39,14 +38,6 @@ public class AirportRouteMapController extends Controller{
if (!checkDataset()){
return;
}
//check if there is internet connectivity
if (!getParent().testInet("maps.google.com")){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("No Internet Connection.");
alert.setHeaderText("Unable to Connect to Google Maps");
alert.setContentText("As we are unable to connect to Google Maps all applications which are supposed to display maps may not work as intended.");
alert.showAndWait();
}
currentDataset = getParent().getCurrentDataset();
//Sets up map.
map = new Map(mapView, new RoutePath(), airportsTable);

@ -72,11 +72,9 @@ public class DatasetController extends Controller{
public void openDataset(){
Dataset datasetToOpen = (Dataset) datasetView.getSelectionModel().getSelectedItem();
if (datasetToOpen != null) {
getParent().setCurrentDataset(datasetToOpen);
loadTable();
getParent().getMenuController().replaceSceneContent(getParent().getSession().getSceneDisplayed());
((Stage) openDataset.getScene().getWindow()).close();
}
}
}

@ -5,7 +5,6 @@ import javafx.beans.value.ObservableValue;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.TableColumn;
import javafx.scene.control.TableView;
import javafx.scene.control.cell.PropertyValueFactory;
@ -42,14 +41,6 @@ public class EquipByRouteController extends Controller{
if (!checkDataset()){
return;
}
//check if there is internet connectivity
if (!getParent().testInet("maps.google.com")){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("No Internet Connection.");
alert.setHeaderText("Unable to Connect to Google Maps");
alert.setContentText("As we are unable to connect to Google Maps all applications which are supposed to display maps may not work as intended.");
alert.showAndWait();
}
currentDataset = getParent().getCurrentDataset();
//Sets up map.
map = new Map(mapView, new RoutePath(), equipTable);

@ -1,7 +1,6 @@
package seng202.group9.GUI;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.control.TableView;
import javafx.scene.web.WebView;
import seng202.group9.Controller.Dataset;
@ -25,14 +24,6 @@ public class PopUpAirportMapController extends Controller {
@Override
public void load() {
//check if there is internet connectivity
if (!getParent().testInet("maps.google.com")){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("No Internet Connection.");
alert.setHeaderText("Unable to Connect to Google Maps");
alert.setContentText("As we are unable to connect to Google Maps all applications which are supposed to display maps may not work as intended.");
alert.showAndWait();
}
dataset = getParent().getCurrentDataset();
loadAirports();
}
@ -45,4 +36,12 @@ public class PopUpAirportMapController extends Controller {
}
map = new Map(mapView, routePaths, Map.loadAirports);
}
public void loadRoutes(ArrayList<Route> routes){
ArrayList<RoutePath> routePaths = new ArrayList<>();
for (Route route: routes){
routePaths.add(route.getRoutePath());
}
map.displayRoutes(routePaths);
}
}

@ -1,7 +1,6 @@
package seng202.group9.GUI;
import javafx.fxml.FXML;
import javafx.scene.control.Alert;
import javafx.scene.web.WebView;
import seng202.group9.Controller.Dataset;
import seng202.group9.Core.Route;
@ -22,14 +21,6 @@ public class PopUpRouteMapController extends Controller{
@Override
public void load() {
//check if there is internet connectivity
if (!getParent().testInet("maps.google.com")){
Alert alert = new Alert(Alert.AlertType.WARNING);
alert.setTitle("No Internet Connection.");
alert.setHeaderText("Unable to Connect to Google Maps");
alert.setContentText("As we are unable to connect to Google Maps all applications which are supposed to display maps may not work as intended.");
alert.showAndWait();
}
dataset = getParent().getCurrentDataset();
loadRoutes();
}

@ -1,6 +1,5 @@
package seng202.group9.GUI;
import javafx.collections.FXCollections;
import javafx.fxml.FXML;
import javafx.scene.chart.BarChart;
import javafx.scene.chart.CategoryAxis;
@ -16,7 +15,10 @@ import seng202.group9.Core.Airline;
import seng202.group9.Core.Airport;
import seng202.group9.Core.Route;
import java.util.*;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.LinkedHashMap;
/**
* Created by fwy13 on 2/10/2016.
@ -58,9 +60,9 @@ public class RouteGraphController extends Controller{
@FXML
private PieChart stopsGraph;
@FXML
private BarChart zoneGraph;
private BarChart contienentGraph;
@FXML
private CategoryAxis zoneXAxis;
private CategoryAxis contienentXAxis;
@Override
public void load() {
@ -93,8 +95,6 @@ public class RouteGraphController extends Controller{
loadOutCountryGraph();
loadEquipGraph();
loadSimilarGraph();
loadStopsGraph();
loadZoneGraph();
}
public void loadAirlineGraph(){
@ -328,6 +328,7 @@ public class RouteGraphController extends Controller{
equipGraph.getData().add(series);
}
public void loadSimilarGraph(){
similarGraph.setTitle("Top 10 Most Similar Routes");
similarXAxis.setLabel("Routes");
@ -363,67 +364,42 @@ public class RouteGraphController extends Controller{
similarGraph.getData().add(series);
}
public void loadStopsGraph(){
stopsGraph.setTitle("Top 10 Most Common Amount of Stops by Routes");
ArrayList<PieChart.Data> data = new ArrayList<>();
HashMap<Integer, Integer> stops = new HashMap<>();//equipment, count
for (Route route: routesFiltered){
if (stops.containsKey(route.getStops())){
stops.put(route.getStops(), stops.get(route.getStops()) + 1);
}else{
stops.put(route.getStops(), 1);
}
}
for (int stop: stops.keySet()){
stopsGraph.getData().add(new PieChart.Data(String.valueOf(stop), stops.get(stop)));
}
}
public void loadZoneGraph(){
zoneGraph.setTitle("Top Zones With Flights.");
zoneXAxis.setLabel("Zones");
/*public void loadStopsGraph(){
stopsGraph.setTitle("Top 10 Equipment used by Routes");
XYChart.Series<String,Integer> series = new XYChart.Series<>();
series.setName("Number of Zones");
LinkedHashMap<String, Integer> zones = new LinkedHashMap<>();
series.setName("Number of Equipment");
HashMap<String, Integer> equipmentList = new HashMap<>();//equipment, count
for (Route route: routesFiltered){
Airport source = route.getSourceAirport();
if (source != null){
if (zones.containsKey(source.getTz())) {
zones.put(source.getTz(), zones.get(source.getTz()) + 1);
} else {
zones.put(source.getTz(), 1);
}
}
Airport dest = route.getDestinationAirport();
if (dest != null){
if (zones.containsKey(dest.getTz())) {
zones.put(dest.getTz(), zones.get(dest.getTz()) + 1);
String equipment[] = route.getEquipment().split(" ");
for (String equip : equipment){
if (equipmentList.containsKey(equip)){
equipmentList.put(equip, equipmentList.get(equip) + 1);
}else{
zones.put(dest.getTz(), 1);
equipmentList.put(equip, 1);
}
}
}
int length = 10;
if (zones.size() < 10){
length = zones.size();
if (equipmentList.size() < 10){
length = equipmentList.size();
}
for (int i = 0 ; i < length; i ++) {
int max = 0;
String maxZone = null;
for (String zone: zones.keySet()){
if (zones.get(zone) > max){
maxZone = zone;
max = zones.get(zone);
}
String maxEquip = "";
for (String equip: equipmentList.keySet()){
if (equipmentList.get(equip) > max){
max = equipmentList.get(equip);
maxEquip = equip;
}
series.getData().add(new XYChart.Data<String, Integer>(maxZone, max));
zones.remove(maxZone);
}
zoneGraph.getData().add(series);
series.getData().add(new XYChart.Data<String, Integer>(maxEquip, max));
equipmentList.remove(maxEquip);
}
equipGraph.getData().add(series);
}*/
public void goToRawData(){
replaceSceneContent(SceneCode.ROUTE_RAW_DATA);
}

@ -127,10 +127,10 @@ public class RouteRDController extends Controller {
/**
* Analyses the current data and creates a graph based on the data.
*
* @see BarGraphController
*/
public void analyse_Button() {
replaceSceneContent(SceneCode.ROUTE_GRAPHS);
replaceSceneContent(SceneCode.ROUTE_ANALYSER);
}
public void routeSummaryButton() {

@ -36,7 +36,6 @@ public class Map {
}
}
});
}
public Map(WebView webView, final ArrayList<RoutePath> newRoute, final int type){

@ -28,10 +28,6 @@
center: {lat: 39.144684, lng: -84.510079},
zoom: 5
});
google.maps.event.addListener(map, 'center_changed', function() {
checkBounds(map);
});
map.setOptions({ minZoom: 2, maxZoom: 18});
new google.maps.Marker({
position: {lat: 39.144684, lng: -84.510079},
@ -46,12 +42,6 @@
zoom: 5
});
google.maps.event.addListener(map, 'center_changed', function() {
checkBounds(map);
});
map.setOptions({ minZoom: 2, maxZoom: 18});
new google.maps.Marker({
position: position[0],
map: map,
@ -64,11 +54,6 @@
center: positions[0],
zoom: 5
});
google.maps.event.addListener(map, 'center_changed', function() {
checkBounds(map);
});
map.setOptions({ minZoom: 2, maxZoom: 18});
for (var i = 0; i < positions.length; i ++) {
new google.maps.Marker({
position: positions[i][0],
@ -84,11 +69,6 @@
center: {lat: 39.144684, lng: -84.510079},
zoom: 15
});
google.maps.event.addListener(map, 'center_changed', function() {
checkBounds(map);
});
map.setOptions({ minZoom: 2, maxZoom: 18});
// CLEAR EXISTING MARKERS
if (marker1 !== undefined && marker2 !== undefined && path !== undefined) {
marker1.setMap(null);
@ -130,11 +110,6 @@
center: {lat: 0, lng: 0},
zoom: 5
});
google.maps.event.addListener(map, 'center_changed', function() {
checkBounds(map);
});
map.setOptions({ minZoom: 2, maxZoom: 18});
for (var i = 0; i < flightPaths.length; i++) {
var tempMarker1 = null;
var tempMarker2 = null;
@ -190,31 +165,6 @@
map.fitBounds(bounds);
}
function checkBounds(map) {
var latNorth = map.getBounds().getNorthEast().lat();
var latSouth = map.getBounds().getSouthWest().lat();
var newLat;
if(latNorth<85 && latSouth>-85) /* in both side -> it's ok */
return;
else {
if(latNorth>85 && latSouth<-85) /* out both side -> it's ok */
return;
else {
if(latNorth>85)
newLat = map.getCenter().lat() - (latNorth-85); /* too north, centering */
if(latSouth<-85)
newLat = map.getCenter().lat() - (latSouth+85); /* too south, centering */
}
}
//re-centre the map
if(newLat) {
var newCenter= new google.maps.LatLng( newLat ,map.getCenter().lng() );
map.setCenter(newCenter);
}
}
</script>
<script src="https://maps.googleapis.com/maps/api/js?key=AIzaSyBnt2PJyKZsh-qrsTkbZwSGuUNWPromlLg&callback=initMap" defer></script>
</body>

@ -164,13 +164,13 @@
</AnchorPane>
</content>
</Tab>
<Tab text="Zones Graph">
<Tab text="Routes to Continent">
<content>
<AnchorPane minHeight="0.0" minWidth="0.0" prefHeight="180.0" prefWidth="200.0">
<children>
<BarChart fx:id="zoneGraph" layoutX="224.0" layoutY="18.0" prefHeight="436.0" prefWidth="800.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<BarChart fx:id="contienentGraph" layoutX="224.0" layoutY="18.0" prefHeight="436.0" prefWidth="800.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0">
<xAxis>
<CategoryAxis fx:id="zoneXAxis" side="BOTTOM" />
<CategoryAxis fx:id="contienentXAxis" side="BOTTOM" />
</xAxis>
<yAxis>
<NumberAxis side="LEFT" />

Loading…
Cancel
Save