public LanesReader(Scenario scenario) { this.lanes = scenario.getLanes(); this.factory = lanes.getFactory(); }
/** * Replaces the method that converted a lane from format 11 to format 20. * Use this when you have not defined an original lane of the link and when you have not set lane capacities yet. */ public static void createOriginalLanesAndSetLaneCapacities(Network network, Lanes lanes){ LanesFactory factory = lanes.getFactory(); for (LanesToLinkAssignment l2l : lanes.getLanesToLinkAssignments().values()){ Link link = network.getLinks().get(l2l.getLinkId()); Lane olLane = factory.createLane(Id.create(l2l.getLinkId().toString() + ".ol", Lane.class)); l2l.addLane(olLane); for (Lane lane : l2l.getLanes().values()) { olLane.addToLaneId(lane.getId()); //set capacity of the lane depending on link capacity and number of representative lanes LanesUtils.calculateAndSetCapacity(lane, true, link, network); } olLane.setNumberOfRepresentedLanes(link.getNumberOfLanes()); olLane.setStartsAtMeterFromLinkEnd(link.getLength()); } }
private void createLanes(Lanes lanes) { LanesFactory factory = lanes.getFactory();
private void createLanes() { Lanes ld = scenario.getLanes(); LanesFactory f = ld.getFactory(); LanesToLinkAssignment l2l = f.createLanesToLinkAssignment(Id.create(12, Link.class)); ld.addLanesToLinkAssignment(l2l); Lane l = f.createLane(Id.create(121, Lane.class)); l.setStartsAtMeterFromLinkEnd(300); l.addToLaneId(Id.create(122, Lane.class)); l2l.addLane(l); l = f.createLane(Id.create(122, Lane.class)); l.setStartsAtMeterFromLinkEnd(150); l.addToLinkId(Id.create(25, Link.class)); l2l.addLane(l); }
private static void createOneLane(Scenario scenario, int numberOfRepresentedLanes) { scenario.getConfig().qsim().setUseLanes(true); Lanes lanes = scenario.getLanes(); LanesFactory builder = lanes.getFactory(); //lanes for link 1 LanesToLinkAssignment lanesForLink1 = builder.createLanesToLinkAssignment(Id.create(1, Link.class)); Lane link1FirstLane = builder.createLane(Id.create("1.ol", Lane.class)); link1FirstLane.addToLaneId(Id.create(1, Lane.class)); link1FirstLane.setNumberOfRepresentedLanes(2.0); link1FirstLane.setStartsAtMeterFromLinkEnd(1005.0); link1FirstLane.setCapacityVehiclesPerHour(1800.0); lanesForLink1.addLane(link1FirstLane); Lane link1lane1 = builder.createLane(Id.create(1, Lane.class)); link1lane1.addToLinkId(Id.create(2, Link.class)); link1lane1.setStartsAtMeterFromLinkEnd(105.0); link1lane1.setNumberOfRepresentedLanes(numberOfRepresentedLanes); link1lane1.setCapacityVehiclesPerHour(numberOfRepresentedLanes * 900.0); lanesForLink1.addLane(link1lane1); lanes.addLanesToLinkAssignment(lanesForLink1); }
/** * create a lane on link 1 representing the given number of lanes. * the lanes capacity is 900 times the number of represented lanes. * */ private static void createOneLane(Scenario scenario, int numberOfRepresentedLanes) { scenario.getConfig().qsim().setUseLanes(true); Lanes lanes = scenario.getLanes(); LanesFactory builder = lanes.getFactory(); //lanes for link 1 LanesToLinkAssignment lanesForLink1 = builder.createLanesToLinkAssignment(Id.create(1, Link.class)); Lane link1FirstLane = builder.createLane(Id.create("1.ol", Lane.class)); link1FirstLane.addToLaneId(Id.create(1, Lane.class)); link1FirstLane.setNumberOfRepresentedLanes(2.0); link1FirstLane.setStartsAtMeterFromLinkEnd(25000.0); link1FirstLane.setCapacityVehiclesPerHour(1800.0); lanesForLink1.addLane(link1FirstLane); Lane link1lane1 = builder.createLane(Id.create(1, Lane.class)); link1lane1.addToLinkId(Id.createLinkId(2)); link1lane1.setStartsAtMeterFromLinkEnd(10000.0); link1lane1.setNumberOfRepresentedLanes(numberOfRepresentedLanes); link1lane1.setCapacityVehiclesPerHour(numberOfRepresentedLanes * 900.0); lanesForLink1.addLane(link1lane1); lanes.addLanesToLinkAssignment(lanesForLink1); }
private static void createThreeLanes(Scenario scenario) { scenario.getConfig().qsim().setUseLanes(true); Lanes lanes = scenario.getLanes(); LanesFactory builder = lanes.getFactory();
scenario.getConfig().qsim().setUseLanes(true); Lanes lanes = scenario.getLanes(); LanesFactory builder = lanes.getFactory();