public bool Feasible(IZone originZone, IZone destinationZone, Time time) { var zoneArray = Root.ZoneSystem.ZoneArray; var origin = zoneArray.GetFlatIndex(originZone.ZoneNumber); var destination = zoneArray.GetFlatIndex(destinationZone.ZoneNumber); if (CurrentlyFeasible <= 0) { return(false); } if (AdvancedNetworkData == null) { return(NetworkData.ValidOd(origin, destination, time) && (!CheckPositiveIVTT || NetworkData.TravelTime(origin, destination, time).ToMinutes() > 0)); } AdvancedNetworkData.GetAllData(origin, destination, time, out float ivtt, out float walk, out float wait, out float boarding, out float cost); return(AdvancedNetworkData.ValidOd(origin, destination, time) && ((!CheckPositiveIVTT || ivtt > 0)) && ((!CheckPositiveWalk || walk > 0))); }
public bool Feasible(IZone origin, IZone destination, Time timeOfDay) { return((origin == destination && UseIntrazonalRegression) || (CurrentlyFeasible > 0 & AutoData.ValidOd(origin, destination, timeOfDay))); }
public virtual bool Feasible(IZone origin, IZone destination, Time time) { return((CurrentlyFeasible > 0) && (AdvancedNetworkData == null ? NetworkData.ValidOd(origin, destination, time) : AdvancedNetworkData.ValidOd(origin, destination, time))); }