public class Route { private double[] currentLocation; //Lat-Long coordinates for current location private double[][][] routeSequences; //3D array of lat-long pairs + speed that form a route sequence, with multiple sequences stored private int routeSelected; private boolean tollsFlag; //stores user setting for whether to avoid tolls private boolean hwyFlag; //stores user preference for whether to avoid major highways public long timeEstimate; //time estimate in seconds public float tollsAmount; //stores toll amount if toll roads are used public Destination currentDestination; //uses user-created class Destination private void updateCurrentLocation() { //execute api call out to GPS service to obtain current location //current location will be hardcoded for testing double[] tmpLoc = {28.1700863880887, -80.67088403224037}; currentLocation = tmpLoc; } private void calculateRoutes() { //execute api call out to routing service to get route info //ideally a query would go out using multiple pathfiding algorithms to get route options updateCurrentLocation(); HelperFunctions apiCallToRouting = new HelperFunctions(); routeSequences[0] = apiCallToRouting.routingAPI(currentLocation, currentDestination.getDestinationCoordinates(), tollsFlag, hwyFlag); //route option 1 routeSequences[1] = apiCallToRouting.routingAPI(currentLocation, currentDestination.getDestinationCoordinates(), tollsFlag, hwyFlag); //route option 2 routeSequences[2] = apiCallToRouting.routingAPI(currentLocation, currentDestination.getDestinationCoordinates(), tollsFlag, hwyFlag); //route option 3 } public void selectRoute() { } }