From: Stefan F. <ste...@us...> - 2010-04-13 23:21:21
|
Update of /cvsroot/rails/18xx/rails/ui/swing In directory sfp-cvsdas-4.v30.ch3.sourceforge.com:/tmp/cvs-serv19400/rails/ui/swing Modified Files: ORPanel.java Log Message: Updated revenue calculation: Added revenue prediction and several bug fixes. Index: ORPanel.java =================================================================== RCS file: /cvsroot/rails/18xx/rails/ui/swing/ORPanel.java,v retrieving revision 1.52 retrieving revision 1.53 diff -C2 -d -r1.52 -r1.53 *** ORPanel.java 12 Apr 2010 17:37:33 -0000 1.52 --- ORPanel.java 13 Apr 2010 23:21:13 -0000 1.53 *************** *** 10,14 **** import org.apache.log4j.Logger; ! import org.jgrapht.graph.SimpleGraph; import rails.algorithms.*; --- 10,14 ---- import org.apache.log4j.Logger; ! import org.jgrapht.Graph; import rails.algorithms.*; *************** *** 589,611 **** NetworkGraphBuilder nwGraph = new NetworkGraphBuilder(); nwGraph.generateGraph(mapManager.getHexesAsList()); ! SimpleGraph<NetworkVertex, NetworkEdge> graph; ! graph = nwGraph.getMapGraph(); if (companyName.equals("All")) { ! NetworkGraphBuilder.visualize(graph, "Map Network"); ! NetworkGraphBuilder.optimizeGraph(graph); ! NetworkGraphBuilder.visualize(graph, "Optimized Map Network"); } else { CompanyManagerI cm = gm.getCompanyManager(); PublicCompanyI company = cm.getCompanyByName(companyName); ! graph = nwGraph.getRailRoadGraph(company); NetworkGraphBuilder.visualize(graph, "Network of " + companyName); ! NetworkGraphBuilder.optimizeGraph(graph); NetworkGraphBuilder.visualize(graph, "Optimized Network of " + companyName); // revenue calculation example ! RevenueAdapter ra = new RevenueAdapter(graph); ! // get trains company.getPortfolio().getTrainList(); --- 589,619 ---- NetworkGraphBuilder nwGraph = new NetworkGraphBuilder(); nwGraph.generateGraph(mapManager.getHexesAsList()); ! Graph<NetworkVertex, NetworkEdge> mapGraph = nwGraph.getMapGraph(); if (companyName.equals("All")) { ! NetworkGraphBuilder.visualize(mapGraph, "Map Network"); ! mapGraph = NetworkGraphBuilder.optimizeGraph(mapGraph); ! NetworkGraphBuilder.visualize(mapGraph, "Optimized Map Network"); } else { CompanyManagerI cm = gm.getCompanyManager(); PublicCompanyI company = cm.getCompanyByName(companyName); ! Graph<NetworkVertex, NetworkEdge> graph = nwGraph.getRailRoadGraph(company); NetworkGraphBuilder.visualize(graph, "Network of " + companyName); ! graph = NetworkGraphBuilder.optimizeGraph(graph); NetworkGraphBuilder.visualize(graph, "Optimized Network of " + companyName); // revenue calculation example ! mapGraph = NetworkGraphBuilder.optimizeGraph(mapGraph); ! RevenueAdapter ra = new RevenueAdapter(mapGraph); ! // set tokens ! List<TokenI> tokens = company.getTokens(); ! for (TokenI token:tokens){ ! NetworkVertex vertex = nwGraph.getVertex(token); ! if (vertex != null) ra.addStartVertex(vertex); ! } ! // run on railroad graph, does not work so far, thus use map graph ! // RevenueAdapter ra = new RevenueAdapter(graph); ! // get trains company.getPortfolio().getTrainList(); *************** *** 616,622 **** while (anotherTrain) { // create results ra.populateRevenueCalculator(company, gm.getCurrentPhase()); log.info("Revenue Adapter:" + ra); - int revenueValue = ra.calculateRevenue(); log.info("Revenue Value:" + revenueValue); --- 624,631 ---- while (anotherTrain) { // create results + // ra.populateRevenueCalculator(company, gm.getPhaseManager().getPhaseByName("8")); ra.populateRevenueCalculator(company, gm.getCurrentPhase()); + ra.activateRevenuePrediction(); log.info("Revenue Adapter:" + ra); int revenueValue = ra.calculateRevenue(); log.info("Revenue Value:" + revenueValue); *************** *** 629,633 **** "Add another train to run?", JOptionPane.QUESTION_MESSAGE); ! if (trainsToAdd.equals("")) { anotherTrain = false; } else { --- 638,642 ---- "Add another train to run?", JOptionPane.QUESTION_MESSAGE); ! if (trainsToAdd == null || trainsToAdd.equals("")) { anotherTrain = false; } else { |