revrt.routing.base.RoutingScenario#

class RoutingScenario(cost_fpath, cost_layers, friction_layers=None, tracked_layers=None, barrier_layers=None, cost_multiplier_layer=None, cost_multiplier_scalar=1, ignore_invalid_costs=True, algorithm='bidirectional_long_range_dijkstra')[source]#

Bases: object

Container for routing scenario configuration

Parameters:
  • cost_fpath (path-like) – Path to the cost layer Zarr store used for routing.

  • cost_layers (list) – List of dictionaries containing layer definitions contributing to the summed routing cost.

  • friction_layers (list, optional) – List of dictionaries defining layers that influence routing but are excluded from reports.

  • tracked_layers (list, optional) – List of dictionaries defining layers to summarize along the route after applying optional multiplier inputs. Each dictionary must include "layer_name" and "agg_method" keys, and may also include "multiplier_layer" and "multiplier_scalar".

  • barrier_layers (list, optional) – List of dictionaries defining explicit hard or soft barriers in the routing surface.

  • cost_multiplier_layer (str, optional) – Layer name providing spatial multipliers for total cost.

  • cost_multiplier_scalar (int or float, optional) – Scalar multiplier applied to the final cost surface.

  • ignore_invalid_costs (bool, optional) – Flag indicating whether non-positive costs block traversal.

  • algorithm (str, default "bidirectional_long_range_dijkstra") – Routing algorithm implementation to use. Supported values are "astar", "long_range_astar", "long_range_dijkstra", "bidirectional_long_range_dijkstra", and "dijkstra". "astar" and "dijkstra" are in-memory implementations that do not respect the memory limit. Prefer a long-range option unless you know for a fact that your route computations will not need much memory and speed is very important to you. By default, "bidirectional_long_range_dijkstra".

Methods

Attributes

cost_function_json

JSON string describing configured cost layers

property cost_function_json[source]#

JSON string describing configured cost layers

Type:

str