39 Scenario scenario = ScenarioUtils.loadScenario(ConfigUtils.loadConfig(
"input/hapt/config.xml"));
41 Id<TransitLine> lineNo = Id.create(
"1", TransitLine.class);
42 TransitLine line1 = scenario.getTransitSchedule().getTransitLines().get(lineNo);
43 Id<TransitRoute> routeNo = Id.create(
"1", TransitRoute.class);
44 TransitRoute route1 = line1.getRoutes().get(routeNo);
45 System.out.println(route1.getRoute());
46 TransitScheduleFactory transitScheduleFactory = scenario.getTransitSchedule().getFactory();
47 TransitRoute route1a = transitScheduleFactory.createTransitRoute(Id.create(
"1a",TransitRoute.class), route1.getRoute(), route1.getStops(), route1.getTransportMode());
48 Departure lastDeparture = null;
50 for (Departure currentDeparture : route1.getDepartures().values()){
51 double newDepartureTime = currentDeparture.getDepartureTime()-i*5*60;
52 Departure newDeparture = transitScheduleFactory.createDeparture(Id.create(
"1_"+newDepartureTime, Departure.class), newDepartureTime);
53 newDeparture.setVehicleId(currentDeparture.getVehicleId());
54 route1a.addDeparture(newDeparture);
55 lastDeparture = newDeparture;
56 System.out.println(lastDeparture);
59 Id<Vehicle> lastTransitVehicle = lastDeparture.getVehicleId();
62 for (
double j = lastDeparture.getDepartureTime()+15*60; j < 22*3600; j = j+15*60){
63 Id<Departure> departureId = Id.create(
"1_"+j, Departure.class);
64 Departure nextDeparture = transitScheduleFactory.createDeparture(departureId, j);
66 lastTransitVehicle = nextTransitVehicle;
67 nextDeparture.setVehicleId(nextTransitVehicle);
68 route1a.addDeparture(nextDeparture);
69 System.out.println(lastDeparture);
70 lastDeparture = nextDeparture;
73 line1.removeRoute(route1);
74 line1.addRoute(route1a);
76 new TransitScheduleWriter(scenario.getTransitSchedule()).writeFile(
"input/hapt/newschedule.xml");
static Id< Vehicle > getNextTransitVehicle(Id< Vehicle > currentTransitVehicle)