SimpleIsochrone

This class provides a vector isochrone generator for places without good OSM street connectivity, or for graphs that are too large-scale to bother with modeling streets (e.g. all of China). It assumes constant speed through both streets and "free space" around vertices, yielding isochrones that are the union of many circles. The origin snapping option used here (connect to all stations within M meters of a lat/lon) should be made into a standard query option in OTP. Instead of specifying an origin station search radius, it could be more coherent to use all stations within (maxIsochroneTime * speed) meters, and apply a travel time to reach them. The GET methods both use makeContours which in turn uses makePoints (where range checking occurs). Putting "@Setter" on all the parameters would allow resource classes to be used outside Jersey.

The following resources are applicable:

/routers/{routerId}/simpleIsochrone

GET

Parameters

name description type default
requestSpacingMinutes (no documentation provided) query 30
requestTimespanHours (no documentation provided) query 20
stopsOnly (no documentation provided) query true
radiusMeters (no documentation provided) query 5000
nContours (no documentation provided) query 4
contourSpacingMinutes (no documentation provided) query 30
resultsProjected Whether the results should be left in the indicated CRS or de-projected back to WGS84. query false
crs The coordinate reference system in which buffering should be performed. Defaults to the Hong Kong 1980 Grid System. query EPSG:2326
shpName What to name the output file. query
routerId The routerId selects between several graphs on the same server. The routerId is pulled from the path, not the query parameters. However, the class RoutingResource is not annotated with a path because we don't want it to be instantiated as an endpoint. Instead, the {routerId} path parameter should be included in the path annotations of all its subclasses. path
fromPlace The start location -- either latitude, longitude pair in degrees or a Vertex label. For example, 40.714476,-74.005966 or mtanyctsubway_A27_S. query
toPlace The end location (see fromPlace for format). query
intermediatePlaces An ordered list of intermediate locations to be visited (see the fromPlace for format). query
date The date that the trip should depart (or arrive, for requests where arriveBy is true). query
time The time that the trip should depart (or arrive, for requests where arriveBy is true). query
arriveBy Whether the trip should depart or arrive at the specified date and time. query false
wheelchair Whether the trip must be wheelchair accessible. query false
maxWalkDistance The maximum distance (in meters) the user is willing to walk. Defaults to unlimited. query
maxPreTransitTime The maximum time (in seconds) of pre-transit travel when using drive-to-transit (park and ride or kiss and ride). Defaults to unlimited. query -1
walkReluctance A multiplier for how bad walking is, compared to being in transit for equal lengths of time. Defaults to 2. Empirically, values between 10 and 20 seem to correspond well to the concept of not wanting to walk too much without asking for totally ridiculous itineraries, but this observation should in no way be taken as scientific or definitive. Your mileage may vary. query
waitReluctance How much worse is waiting for a transit vehicle than being on a transit vehicle, as a multiplier. The default value treats wait and on-vehicle time as the same. It may be tempting to set this higher than walkReluctance (as studies often find this kind of preferences among riders) but the planner will take this literally and walk down a transit line to avoid waiting at a stop. This used to be set less than 1 (0.95) which would make waiting offboard preferable to waiting onboard in an interlined trip. That is also undesirable. If we only tried the shortest possible transfer at each stop to neighboring stop patterns, this problem could disappear. query
waitAtBeginningFactor How much less bad is waiting at the beginning of the trip (replaces waitReluctance) query
walkSpeed The user's walking speed in meters/second. Defaults to approximately 3 MPH. query
bikeSpeed The user's biking speed in meters/second. Defaults to approximately 11 MPH, or 9.5 for bikeshare. query
bikeSwitchTime The time it takes the user to fetch their bike and park it again in seconds. Defaults to 0. query
bikeSwitchCost The cost of the user fetching their bike and parking it again. Defaults to 0. query
triangleSafetyFactor For bike triangle routing, how much safety matters (range 0-1). query
triangleSlopeFactor For bike triangle routing, how much slope matters (range 0-1). query
triangleTimeFactor For bike triangle routing, how much time matters (range 0-1). query
optimize The set of characteristics that the user wants to optimize for. @See OptimizeType query QUICK
mode The set of modes that a user is willing to use, with qualifiers stating whether vehicles should be parked, rented, etc. query TRANSIT,WALK
minTransferTime The minimum time, in seconds, between successive trips on different vehicles. This is designed to allow for imperfect schedule adherence. This is a minimum; transfers over longer distances might use a longer time. query -1
numItineraries The maximum number of possible itineraries to return. query -1
preferredRoutes The list of preferred routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
otherThanPreferredRoutesPenalty Penalty added for using every route that is not preferred if user set any route as preferred, i.e. number of seconds that we are willing to wait for preferred route. query -1
preferredAgencies The comma-separated list of preferred agencies. query
unpreferredRoutes The list of unpreferred routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
unpreferredAgencies The comma-separated list of unpreferred agencies. query
showIntermediateStops Whether intermediate stops -- those that the itinerary passes in a vehicle, but does not board or alight at -- should be returned in the response. For example, on a Q train trip from Prospect Park to DeKalb Avenue, whether 7th Avenue and Atlantic Avenue should be included. query false
walkBoardCost Prevents unnecessary transfers by adding a cost for boarding a vehicle. This is the cost that is used when boarding while walking. query -1
bikeBoardCost Prevents unnecessary transfers by adding a cost for boarding a vehicle. This is the cost that is used when boarding while cycling. This is usually higher that walkBoardCost. query -1
bannedRoutes The comma-separated list of banned routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
bannedAgencies The comma-separated list of banned agencies. query
bannedTrips The comma-separated list of banned trips. The format is agency_trip[:stop*], so: TriMet_24601 or TriMet_24601:0:1:2:17:18:19 query
bannedStops A comma-separated list of banned stops. A stop is banned by ignoring its pre-board and pre-alight edges. This means the stop will be reachable via the street network. Also, it is still possible to travel through the stop. Just boarding and alighting is prohibited. The format is agencyId_stopId, so: TriMet_2107 query
bannedStopsHard A comma-separated list of banned stops. A stop is banned by ignoring its pre-board and pre-alight edges. This means the stop will be reachable via the street network. It is not possible to travel through the stop. For example, this parameter can be used when a train station is destroyed, such that no trains can drive through the station anymore. The format is agencyId_stopId, so: TriMet_2107 query
transferPenalty An additional penalty added to boardings after the first. The value is in OTP's internal weight units, which are roughly equivalent to seconds. Set this to a high value to discourage transfers. Of course, transfers that save significant time or walking will still be taken. query -1
nonpreferredTransferPenalty An additional penalty added to boardings after the first when the transfer is not preferred. Preferred transfers also include timed transfers. The value is in OTP's internal weight units, which are roughly equivalent to seconds. Set this to a high value to discourage transfers that are not preferred. Of course, transfers that save significant time or walking will still be taken. When no preferred or timed transfer is defined, this value is ignored. query -1
maxTransfers The maximum number of transfers (that is, one plus the maximum number of boardings) that a trip will be allowed. Larger values will slow performance, but could give better routes. This is limited on the server side by the MAX_TRANSFERS value in org.opentripplanner.api.ws.Planner. query -1
batch If true, goal direction is turned off and a full path tree is built (specify only once) query false
startTransitStopId A transit stop required to be the first stop in the search (AgencyId_StopId) query
startTransitTripId A transit trip acting as a starting "state" for depart-onboard routing (AgencyId_TripId) query
clampInitialWait When subtracting initial wait time, do not subtract more than this value, to prevent overly optimistic trips. Reasoning is that it is reasonable to delay a trip start 15 minutes to make a better trip, but that it is not reasonable to delay a trip start 15 hours; if that is to be done, the time needs to be included in the trip time. This number depends on the transit system; for transit systems where trips are planned around the vehicles, this number can be much higher. For instance, it's perfectly reasonable to delay one's trip 12 hours if one is taking a cross-country Amtrak train from Emeryville to Chicago. Has no effect in stock OTP, only in Analyst. A value of 0 means that initial wait time will not be subtracted out (will be clamped to 0). A value of -1 (the default) means that clamping is disabled, so any amount of initial wait time will be subtracted out. query -1
reverseOptimizeOnTheFly If true, this trip will be reverse-optimized on the fly. Otherwise, reverse-optimization will occur once a trip has been chosen (in Analyst, it will not be done at all). query
boardSlack (no documentation provided) query -1
alightSlack (no documentation provided) query -1
locale (no documentation provided) query en_US
ignoreRealtimeUpdates If true, realtime updates are ignored during this search. query
disableRemainingWeightHeuristic If true, the remaining weight heuristic is disabled. Currently only implemented for the long distance path service. query

Response Body

element: (custom)
media types: application/json

Evenly spaced travel time contours (isochrones) as GeoJSON.

GET

Parameters

name description type default
stream (no documentation provided) query true
requestSpacingMinutes (no documentation provided) query 30
requestTimespanHours (no documentation provided) query 20
stopsOnly (no documentation provided) query true
radiusMeters (no documentation provided) query 5000
nContours (no documentation provided) query 4
contourSpacingMinutes (no documentation provided) query 30
resultsProjected Whether the results should be left in the indicated CRS or de-projected back to WGS84. query false
crs The coordinate reference system in which buffering should be performed. Defaults to the Hong Kong 1980 Grid System. query EPSG:2326
shpName What to name the output file. query
routerId The routerId selects between several graphs on the same server. The routerId is pulled from the path, not the query parameters. However, the class RoutingResource is not annotated with a path because we don't want it to be instantiated as an endpoint. Instead, the {routerId} path parameter should be included in the path annotations of all its subclasses. path
fromPlace The start location -- either latitude, longitude pair in degrees or a Vertex label. For example, 40.714476,-74.005966 or mtanyctsubway_A27_S. query
toPlace The end location (see fromPlace for format). query
intermediatePlaces An ordered list of intermediate locations to be visited (see the fromPlace for format). query
date The date that the trip should depart (or arrive, for requests where arriveBy is true). query
time The time that the trip should depart (or arrive, for requests where arriveBy is true). query
arriveBy Whether the trip should depart or arrive at the specified date and time. query false
wheelchair Whether the trip must be wheelchair accessible. query false
maxWalkDistance The maximum distance (in meters) the user is willing to walk. Defaults to unlimited. query
maxPreTransitTime The maximum time (in seconds) of pre-transit travel when using drive-to-transit (park and ride or kiss and ride). Defaults to unlimited. query -1
walkReluctance A multiplier for how bad walking is, compared to being in transit for equal lengths of time. Defaults to 2. Empirically, values between 10 and 20 seem to correspond well to the concept of not wanting to walk too much without asking for totally ridiculous itineraries, but this observation should in no way be taken as scientific or definitive. Your mileage may vary. query
waitReluctance How much worse is waiting for a transit vehicle than being on a transit vehicle, as a multiplier. The default value treats wait and on-vehicle time as the same. It may be tempting to set this higher than walkReluctance (as studies often find this kind of preferences among riders) but the planner will take this literally and walk down a transit line to avoid waiting at a stop. This used to be set less than 1 (0.95) which would make waiting offboard preferable to waiting onboard in an interlined trip. That is also undesirable. If we only tried the shortest possible transfer at each stop to neighboring stop patterns, this problem could disappear. query
waitAtBeginningFactor How much less bad is waiting at the beginning of the trip (replaces waitReluctance) query
walkSpeed The user's walking speed in meters/second. Defaults to approximately 3 MPH. query
bikeSpeed The user's biking speed in meters/second. Defaults to approximately 11 MPH, or 9.5 for bikeshare. query
bikeSwitchTime The time it takes the user to fetch their bike and park it again in seconds. Defaults to 0. query
bikeSwitchCost The cost of the user fetching their bike and parking it again. Defaults to 0. query
triangleSafetyFactor For bike triangle routing, how much safety matters (range 0-1). query
triangleSlopeFactor For bike triangle routing, how much slope matters (range 0-1). query
triangleTimeFactor For bike triangle routing, how much time matters (range 0-1). query
optimize The set of characteristics that the user wants to optimize for. @See OptimizeType query QUICK
mode The set of modes that a user is willing to use, with qualifiers stating whether vehicles should be parked, rented, etc. query TRANSIT,WALK
minTransferTime The minimum time, in seconds, between successive trips on different vehicles. This is designed to allow for imperfect schedule adherence. This is a minimum; transfers over longer distances might use a longer time. query -1
numItineraries The maximum number of possible itineraries to return. query -1
preferredRoutes The list of preferred routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
otherThanPreferredRoutesPenalty Penalty added for using every route that is not preferred if user set any route as preferred, i.e. number of seconds that we are willing to wait for preferred route. query -1
preferredAgencies The comma-separated list of preferred agencies. query
unpreferredRoutes The list of unpreferred routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
unpreferredAgencies The comma-separated list of unpreferred agencies. query
showIntermediateStops Whether intermediate stops -- those that the itinerary passes in a vehicle, but does not board or alight at -- should be returned in the response. For example, on a Q train trip from Prospect Park to DeKalb Avenue, whether 7th Avenue and Atlantic Avenue should be included. query false
walkBoardCost Prevents unnecessary transfers by adding a cost for boarding a vehicle. This is the cost that is used when boarding while walking. query -1
bikeBoardCost Prevents unnecessary transfers by adding a cost for boarding a vehicle. This is the cost that is used when boarding while cycling. This is usually higher that walkBoardCost. query -1
bannedRoutes The comma-separated list of banned routes. The format is agency_[routename][_routeid], so TriMet_100 (100 is route short name) or Trimet__42 (two underscores, 42 is the route internal ID). query
bannedAgencies The comma-separated list of banned agencies. query
bannedTrips The comma-separated list of banned trips. The format is agency_trip[:stop*], so: TriMet_24601 or TriMet_24601:0:1:2:17:18:19 query
bannedStops A comma-separated list of banned stops. A stop is banned by ignoring its pre-board and pre-alight edges. This means the stop will be reachable via the street network. Also, it is still possible to travel through the stop. Just boarding and alighting is prohibited. The format is agencyId_stopId, so: TriMet_2107 query
bannedStopsHard A comma-separated list of banned stops. A stop is banned by ignoring its pre-board and pre-alight edges. This means the stop will be reachable via the street network. It is not possible to travel through the stop. For example, this parameter can be used when a train station is destroyed, such that no trains can drive through the station anymore. The format is agencyId_stopId, so: TriMet_2107 query
transferPenalty An additional penalty added to boardings after the first. The value is in OTP's internal weight units, which are roughly equivalent to seconds. Set this to a high value to discourage transfers. Of course, transfers that save significant time or walking will still be taken. query -1
nonpreferredTransferPenalty An additional penalty added to boardings after the first when the transfer is not preferred. Preferred transfers also include timed transfers. The value is in OTP's internal weight units, which are roughly equivalent to seconds. Set this to a high value to discourage transfers that are not preferred. Of course, transfers that save significant time or walking will still be taken. When no preferred or timed transfer is defined, this value is ignored. query -1
maxTransfers The maximum number of transfers (that is, one plus the maximum number of boardings) that a trip will be allowed. Larger values will slow performance, but could give better routes. This is limited on the server side by the MAX_TRANSFERS value in org.opentripplanner.api.ws.Planner. query -1
batch If true, goal direction is turned off and a full path tree is built (specify only once) query false
startTransitStopId A transit stop required to be the first stop in the search (AgencyId_StopId) query
startTransitTripId A transit trip acting as a starting "state" for depart-onboard routing (AgencyId_TripId) query
clampInitialWait When subtracting initial wait time, do not subtract more than this value, to prevent overly optimistic trips. Reasoning is that it is reasonable to delay a trip start 15 minutes to make a better trip, but that it is not reasonable to delay a trip start 15 hours; if that is to be done, the time needs to be included in the trip time. This number depends on the transit system; for transit systems where trips are planned around the vehicles, this number can be much higher. For instance, it's perfectly reasonable to delay one's trip 12 hours if one is taking a cross-country Amtrak train from Emeryville to Chicago. Has no effect in stock OTP, only in Analyst. A value of 0 means that initial wait time will not be subtracted out (will be clamped to 0). A value of -1 (the default) means that clamping is disabled, so any amount of initial wait time will be subtracted out. query -1
reverseOptimizeOnTheFly If true, this trip will be reverse-optimized on the fly. Otherwise, reverse-optimization will occur once a trip has been chosen (in Analyst, it will not be done at all). query
boardSlack (no documentation provided) query -1
alightSlack (no documentation provided) query -1
locale (no documentation provided) query en_US
ignoreRealtimeUpdates If true, realtime updates are ignored during this search. query
disableRemainingWeightHeuristic If true, the remaining weight heuristic is disabled. Currently only implemented for the long distance path service. query

Response Body

element: (custom)
media types: application/x-zip-compressed

Evenly spaced travel time contours (isochrones) as a zipped shapefile.