package cz.agents.agentpolis.darptestbed.siminfrastructure.request.generator; import cz.agents.agentpolis.darptestbed.siminfrastructure.request.generator.support.RestaurantDensityCalculator; import cz.agents.agentpolis.simmodel.environment.model.citymodel.restaurantnetwork.elements.RestaurantNode; import cz.agents.dbtokmlexporter.darptestbed.kmlitembuilder.NodeDensityHeatMapKmlItemBuilder; import cz.agents.dbtokmlexporter.kmlitem.builder.KmlItemBuilder; import cz.agents.dbtokmlexporter.kmlitem.builder.SimpleKmlItemBuilder; import org.apache.log4j.Logger; import java.io.File; import java.io.IOException; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import java.util.Map; public class RestaurantDensityCalculatorApp { private static Logger LOGGER = Logger.getRootLogger(); static String BENCHMARK_DIR = "prague"; static String OSM_FILE_NAME = "prague"; // static String BENCHMARK_DIR = "hague_20_drivers"; // static String OSM_FILE_NAME = "haag"; /** * @param args * @throws java.io.IOException * @throws org.codehaus.jackson.map.JsonMappingException * * @throws org.codehaus.jackson.JsonGenerationException * */ public static void main(String[] args) throws IOException, SQLException { // PropertyConfigurator.configure("log4j.properties"); if (args.length == 0) { args = new String[] {BENCHMARK_DIR, OSM_FILE_NAME}; } String outputFolderParent = "../mobilitytestbedvisio/"; final String osmFileName = outputFolderParent + "experiments/" + args[0] + "/data/" + args[1] + ".osm"; final String benchmarkDir = outputFolderParent + "experiments/" + args[0] + "/"; RestaurantDensityCalculator approximation = new RestaurantDensityCalculator(osmFileName, benchmarkDir, null); Map<RestaurantNode, Integer> frequencies = approximation.calculateFrequencies(); NodeDensityHeatMapKmlItemBuilder nodeDensityHeatMap = NodeDensityHeatMapKmlItemBuilder.createNodeDensityMapKmlBuilder( approximation.getRestaurantNodesCoordinates(), "node_density"); List<SimpleKmlItemBuilder> itemBuilders = new ArrayList<>(); itemBuilders.add(nodeDensityHeatMap); KmlItemBuilder.saveBuiltKmlItemsToSeparateFiles(itemBuilders, outputFolderParent + "experiments/" + args[0] + "/node_density/", BENCHMARK_DIR+File.separator+"data"+File.separator+"visualizations"); LOGGER.debug(frequencies); } }