@Provides @Singleton Counts<Link> provideLinkCounts(Scenario scenario, CountsConfigGroup config) { Counts<Link> counts = (Counts<Link>) scenario.getScenarioElement(Counts.ELEMENT_NAME); if (counts != null) { return counts; } else { counts = new Counts<>(); if (config.getCountsFileName() != null) { final String inputCRS = config.getInputCRS(); final String internalCRS = scenario.getConfig().global().getCoordinateSystem(); MatsimCountsReader counts_parser; if (inputCRS == null) { counts_parser = new MatsimCountsReader(counts); } else { log.info( "re-projecting counts from "+inputCRS+" to "+internalCRS+" for import" ); final CoordinateTransformation transformation = TransformationFactory.getCoordinateTransformation( inputCRS, internalCRS ); counts_parser = new MatsimCountsReader( transformation , counts ); } counts_parser.parse(config.getCountsFileURL(scenario.getConfig().getContext())); } return counts; } }
config.plans().setInputFile(getAbsolutePath(prefix, config.plans().getInputFile())); config.facilities().setInputFile(getAbsolutePath(prefix, config.facilities().getInputFile())); config.counts().setInputFile(getAbsolutePath(prefix, config.counts().getCountsFileName())); config.households().setInputFile(getAbsolutePath(prefix, config.households().getInputFile()));
public void setUp() { String configFile = "test/input/org/matsim/counts/config.xml"; Config config = ConfigUtils.loadConfig(configFile); MatsimRandom.reset(config.global().getRandomSeed()); this.scenario = ScenarioUtils.createScenario(config); MatsimCountsReader counts_parser = new MatsimCountsReader(this.counts); counts_parser.readFile(config.counts().getCountsFileName()); this.network = scenario.getNetwork(); new MatsimNetworkReader(scenario.getNetwork()).readFile(config.network().getInputFile()); }