@Override public String toString() { return "Id " + transitStopFacility.getId() + ", " + numberOfTransfers + " transfers from " + indexOfFirstTransfer; } }
private String generateRouteHash(double startTime, double endTime, ArrayList<TransitStopFacility> stopsToBeServed) { StringBuffer sB = new StringBuffer(); sB.append(startTime); sB.append("-" + endTime); for (TransitStopFacility transitStopFacility : stopsToBeServed) { sB.append("-"); sB.append(transitStopFacility.getId().toString()); } return sB.toString(); }
public ExperimentalTransitRoute(final TransitStopFacility accessFacility, final TransitStopFacility egressFacility, final Id<TransitLine> lineId, final Id<TransitRoute> routeId) { this(accessFacility.getLinkId(), egressFacility.getLinkId()); this.accessStopId = accessFacility.getId(); this.lineId = lineId; this.routeId = routeId; this.egressStopId = egressFacility.getId(); }
public boolean isSameButOperationTime(PPlan testPlan) { for (int i = 0; i < this.stopsToBeServed.size(); i++) { if(!this.stopsToBeServed.get(i).getId().toString().equalsIgnoreCase(testPlan.getStopsToBeServed().get(i).getId().toString())){ return false; } } if(this.nVehicles != testPlan.getNVehicles()){ return false; } return true; }
public CreateOperatorFromTransitSchedule(OperatorFactory operatorFactory, PRouteProvider routeProvider, PConfigGroup pConfig, TransitSchedule originalSchedule) { this.operatorFactory = operatorFactory; this.routeProvider = routeProvider; this.pConfig = pConfig; this.originalStops = new LinkedHashMap<>(); for (TransitStopFacility stop : originalSchedule.getFacilities().values()) { this.originalStops.put(stop.getId().toString(), stop); } }
public String toString(double budget) { StringBuffer sB = new StringBuffer(); sB.append("Plan " + this.planId + ", score: " + this.score + ", score/veh: " + this.getScorePerVehicle() + ", trips: " + this.tripsServed + ", vehicles: " + this.vehicleIds.size() + ", Operation time: " + Time.writeTime(this.startTime) + "-" + Time.writeTime(this.endTime) + ", Stops: "); for (TransitStopFacility stop : this.stopsToBeServed) { sB.append(stop.getId()); sB.append(", "); } sB.append("line budget " + budget); return sB.toString(); }
@Override public void writeDynData(ByteBuffer out) throws IOException { for (TransitStopFacility facility : this.schedule.getFacilities().values()) { out.putInt(this.agentTracker.getAgentsAtFacility(facility.getId()).size()); } }
final Set<Id<TransitStopFacility>> getStopsUsed(Collection<TransitRoute> routes) { Set<Id<TransitStopFacility>> stopsUsed = new TreeSet<>(); for (TransitRoute route : routes) { for (TransitRouteStop stop : route.getStops()) { stopsUsed.add(stop.getStopFacility().getId()); } } return stopsUsed; }
private void assertAllStopsServed() { if (this.nextStop != null) { RuntimeException e = new RuntimeException("Transit vehicle is not yet at last stop! vehicle-id = " + this.vehicle.getVehicle().getId() + "; next-stop = " + this.nextStop.getStopFacility().getId()); log.error(e); throw e; } }
private boolean containsId(List<TransitRouteStop> stopsToCome, Id<TransitStopFacility> egressStopId) { for (TransitRouteStop stop : stopsToCome) { if (egressStopId.equals(stop.getStopFacility().getId())) { return true; } } return false; }
@SuppressWarnings("static-method") private final boolean containsId(List<TransitRouteStop> stopsToCome, Id<TransitStopFacility> egressStopId) { for (TransitRouteStop stop : stopsToCome) { if (egressStopId.equals(stop.getStopFacility().getId())) { return true; } } return false; }
public TransitRouterNetworkNode createNode(final TransitRouteStop stop, final TransitRoute route, final TransitLine line) { Id<Node> id = null; if(line==null && route==null) id = Id.createNodeId(stop.getStopFacility().getId().toString()); else id = Id.createNodeId("number:"+nextNodeId++); final TransitRouterNetworkNode node = new TransitRouterNetworkNode(id, stop, route, line); if(this.nodes.get(node.getId())!=null) throw new RuntimeException(); this.nodes.put(node.getId(), node); return node; }
private TransitStopFacility drawRandomStop(Geometry buffer, PRouteProvider pRouteProvider, Set<Id<TransitStopFacility>> stopsUsed) { List<TransitStopFacility> choiceSet = new LinkedList<>(); // find choice-set for (TransitStopFacility stop : pRouteProvider.getAllPStops()) { if (!stopsUsed.contains(stop.getId())) { if (buffer.contains(MGC.coord2Point(stop.getCoord()))) { choiceSet.add(stop); } } } return pRouteProvider.drawRandomStopFromList(choiceSet); }
public VehicleOccupancyCalculator(final TransitSchedule transitSchedule, final Vehicles vehicles, final int timeSlot, final int totalTime) { this.timeSlot = timeSlot; for(TransitLine line:transitSchedule.getTransitLines().values()) for(TransitRoute route:line.getRoutes().values()) { Map<Id<TransitStopFacility>, VehicleOccupancyData> routeMap = new HashMap<Id<TransitStopFacility>, VehicleOccupancyData>(100); vehicleOccupancy.put(new Tuple<Id<TransitLine>, Id<TransitRoute>>(line.getId(), route.getId()), routeMap); for(int s=0; s<route.getStops().size()-1; s++) { routeMap.put(route.getStops().get(s).getStopFacility().getId(), new VehicleOccupancyDataArray((int) (totalTime/timeSlot)+1)); } } this.vehicles = vehicles; }
private double getDepartureOffsetFromRoute(TransitRoute transitRoute, Id<TransitStopFacility> accessStopId) { for (TransitRouteStop routeStop : transitRoute.getStops()) { if (accessStopId.equals(routeStop.getStopFacility().getId())) { return routeStop.getDepartureOffset(); } } log.error("Stop " + accessStopId + " not found in route " + transitRoute.getId()); // returning what??? return -1.0; }
private double getArrivalOffsetFromRoute(TransitRoute transitRoute, Id<TransitStopFacility> egressStopId) { for (TransitRouteStop routeStop : transitRoute.getStops()) { if (egressStopId.equals(routeStop.getStopFacility().getId())) { return routeStop.getArrivalOffset(); } } log.error("Stop " + egressStopId + " not found in route " + transitRoute.getId()); // returning what??? return -1.0; }
@Override public boolean getExitAtStop(final TransitStopFacility stop) { ExperimentalTransitRoute route = (ExperimentalTransitRoute) getCurrentLeg().getRoute(); return route.getEgressStopId().equals(stop.getId()); }
@Override public final boolean getExitAtStop(final TransitStopFacility stop) { ExperimentalTransitRoute route = (ExperimentalTransitRoute) basicAgentDelegate.getCurrentLeg().getRoute(); return route.getEgressStopId().equals(stop.getId()); }