public TransitRouterNetworkNode createNode(final TransitRouteStop stop, final TransitRoute route, final TransitLine line) { final TransitRouterNetworkNode node = new TransitRouterNetworkNode(Id.create(this.nextNodeId++, Node.class), stop, route, line); this.nodes.put(node.getId(), node); return node; }
if (node.getInLinks().size() > 0) { // only add links from this node to other nodes if agents actually can arrive here for (TransitRouterNetworkNode node2 : network.getNearestNodes(node.stop.getStopFacility().getCoord(), maxBeelineWalkConnectionDistance)) { if ((node != node2) && (node2.getOutLinks().size() > 0)) { // only add links to other nodes when agents can depart there if ((node.line != node2.line) || (node.stop.getStopFacility() != node2.stop.getStopFacility())) {
@Override public double getLinkTravelDisutility(Link link, double time, Person person, Vehicle vehicle, CustomDataManager dataManager) { double val = this.routerDisutility.getLinkTravelDisutility(link, time, person, vehicle, dataManager); System.out.print("handling link " + ((TransitRouterNetworkNode) link.getFromNode()).getStop().getStopFacility().getId() + ">" + ((TransitRouterNetworkNode) link.getToNode()).getStop().getStopFacility().getId()); ArrayList<LoggerData> links = new ArrayList<LoggerData>(); Object o = dataManager.getFromNodeCustomData(); if (o instanceof ArrayList) { links.addAll((Collection<? extends LoggerData>) o); } links.add(new LoggerData(link, time)); String newState = Arrays.toString(links.toArray(new LoggerData[links.size()])); System.out.println(" : " + newState); this.states.add(newState); dataManager.setToNodeCustomData(links); return val; }