@Deprecated // use creational method in FacilitiesUtils instead. kai, feb'14 public ActivityFacilitiesImpl(final String name) { this.name = name; this.factory = new ActivityFacilitiesFactoryImpl(); }
@Test public void testCreateActivityOption() { ActivityFacilitiesFactoryImpl factory = new ActivityFacilitiesFactoryImpl(); ActivityOption option = factory.createActivityOption("leisure"); Assert.assertEquals("leisure", option.getType()); Assert.assertEquals(Integer.MAX_VALUE, option.getCapacity(), 1e-9); }
@Test public void testCreateActivityFacility() { ActivityFacilitiesFactoryImpl factory = new ActivityFacilitiesFactoryImpl(); ActivityFacility facility = factory.createActivityFacility(Id.create(1980, ActivityFacility.class), new Coord((double) 5, (double) 11)); Assert.assertEquals("1980", facility.getId().toString()); Assert.assertEquals(5.0, facility.getCoord().getX(), 1e-9); Assert.assertEquals(11.0, facility.getCoord().getY(), 1e-9); }
@Override public void complete() { LOG.info("Nodes: " + nodeMap.size()); LOG.info("Ways: " + wayMap.size()); LOG.info("Relations: " + relationMap.size()); LOG.info("Start creating facilities."); ActivityFacilitiesFactory aff = new ActivityFacilitiesFactoryImpl(); processFacilities(aff, nodeMap, osmKey); processFacilities(aff, wayMap, osmKey); processFacilities(aff, relationMap, osmKey); }
@Override public void complete() { log.info(" nodes: " + nodeMap.size()); log.info(" ways: " + wayMap.size()); log.info("relations: " + relationMap.size()); log.info("Creating facilities.."); ActivityFacilitiesFactory aff = new ActivityFacilitiesFactoryImpl(); String landUseType = "type"; initLandUseFeatureType(landUseType); /* First check all the ways for land use. */ processLandUseAreas(aff, wayMap); /* Second, check all the ways for buildings. */ processBuildings(aff, wayMap); log.info("featureErrorCounter = " + featureErrorCounter); log.info("buildingErrorCounter = " + buildingErrorCounter); }
@Override public void complete() { log.info(" nodes: " + nodeMap.size()); log.info(" ways: " + wayMap.size()); log.info("relations: " + relationMap.size()); log.info("Creating facilities.."); ActivityFacilitiesFactory aff = new ActivityFacilitiesFactoryImpl(); /* First check all the point features. */ processFacilities(aff, nodeMap); /* Second, check for way features. */ processFacilities(aff, wayMap); /* Thirdly, check for relation. */ processFacilities(aff, relationMap); /*TODO Report the final counts of different amenity types. */ }
@Override public void complete() { log.info("Number of nodes: " + nodeMap.size()); log.info("Number of ways: " + wayMap.size()); log.info("Number of relations: " + relationMap.size()); log.info("Creating facilities.."); ActivityFacilitiesFactory aff = new ActivityFacilitiesFactoryImpl(); initFeatureType(this.outputCRS); // Check the ways for land use processLandUseAreas(aff, wayMap); // /* First check all the point features. */ processEntity(aff, nodeMap); /* Second, check for way features. */ processEntity(aff, wayMap); /* Thirdly, check for relation. */ processEntity(aff, relationMap); // log.info("featureErrorCounter = " + featureErrorCounter); log.info("buildingErrorCounter = " + buildingErrorCounter); }
ActivityFacilitiesFactory aff = new ActivityFacilitiesFactoryImpl(); ActivityFacilities facilities = FacilitiesUtils.createActivityFacilities();
@Override public double computeContributionOfOpportunity(ActivityFacility origin, final AggregationObject destination, Double departureTime) { Person person = null ; // I think that this is ok ActivityFacilitiesFactory activityFacilitiesFactory = new ActivityFacilitiesFactoryImpl(); ActivityFacility destinationFacility = activityFacilitiesFactory.createActivityFacility(null, destination.getNearestNode().getCoord()); Gbl.assertNotNull(tripRouter); List<? extends PlanElement> plan = tripRouter.calcRoute(mode, origin, destinationFacility, departureTime, person); // Vehicle vehicle = null ; // I think that this is ok double utility = 0.; List<Leg> legs = TripStructureUtils.getLegs(plan); // TODO Doing it like this, the pt interaction (e.g. waiting) times will be omitted! Gbl.assertIf(!legs.isEmpty()); for (Leg leg : legs) { // Add up all utility components of leg utility += leg.getRoute().getDistance() * this.planCalcScoreConfigGroup.getModes().get(leg.getMode()).getMarginalUtilityOfDistance(); utility += leg.getRoute().getTravelTime() * this.planCalcScoreConfigGroup.getModes().get(leg.getMode()).getMarginalUtilityOfTraveling() / 3600.; utility += -leg.getRoute().getTravelTime() * this.planCalcScoreConfigGroup.getPerforming_utils_hr() / 3600.; } // Utility based on opportunities that are attached to destination node double sumExpVjkWalk = destination.getSum(); // exp(beta * a) * exp(beta * b) = exp(beta * (a+b)) return Math.exp(this.planCalcScoreConfigGroup.getBrainExpBeta() * utility) * sumExpVjkWalk; } }