route_calc
case_from_angle(start, end)
¶
Determine the direction of travel between two points and return the associated case
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
start
|
ndarray
|
the coordinates of the start point within the cell |
required |
end
|
ndarray
|
the coordinates of the end point within the cell |
required |
Returns:
| Name | Type | Description |
|---|---|---|
case |
int
|
the case to use to select variable values from a list |
find_intersections(df, mesh)
¶
Find crossing points of the route and the cells in the mesh Args: df (DataFrame): Route info in dataframe format mesh (GeoDataFrame): Mesh in GeoDataFrame format
Returns:
| Name | Type | Description |
|---|---|---|
track_points |
dict
|
Dictionary of crossing points and cell ids |
load_mesh(mesh_file)
¶
Load mesh from file into GeoDataFrame Args: mesh_file (str): Path to mesh with vehicle information
Returns:
| Name | Type | Description |
|---|---|---|
mesh |
GeoDataFrame
|
Mesh in GeoDataFrame format |
load_route(route_file)
¶
Load route information from file
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
route_file
|
str
|
Path to user defined route in json, csv or gpx format |
required |
Returns:
| Name | Type | Description |
|---|---|---|
df |
Dataframe
|
Dataframe with route info |
from_wp |
str
|
Name of start waypoint |
to_wp |
str
|
Name of end waypoint |
route_type |
str
|
Type of route, either 'smoothed' or 'dijkstra' |
order_track(df, track_points)
¶
Order crossing points into a track along the route Args: df (DataFrame): Route info in dataframe format track_points (dict): Dictionary of crossing points and cell ids
Returns:
| Name | Type | Description |
|---|---|---|
user_track |
DataFrame
|
DataFrame of ordered crossing points and cell ids |
route_calc(df, from_wp, to_wp, mesh, route_type)
¶
Function to calculate the fuel/time cost of a user defined route in a given mesh
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
df
|
DataFrame
|
Route info in dataframe format |
required |
from_wp
|
str
|
Name of start waypoint |
required |
to_wp
|
str
|
Name of end waypoint |
required |
mesh
|
json
|
A Mesh with encoded vehicle information |
required |
route_type
|
str
|
Type of route being calculated, either 'dijkstra' or 'smoothed' |
required |
Returns:
| Name | Type | Description |
|---|---|---|
user_path |
dict
|
User defined route in geojson format with calculated cost information |
traveltime_distance(cellbox, wp, cp, speed='speed', vector_x='uC', vector_y='vC', case=0, dijkstra=False)
¶
Calculate travel time and distance for two points.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
cellbox
|
dict
|
the cell containing the line segment |
required |
wp
|
ndarray
|
the start point |
required |
cp
|
ndarray
|
the end point |
required |
speed
|
str
|
the key for speed |
'speed'
|
vector_x
|
str
|
the key for the x vector component |
'uC'
|
vector_y
|
str
|
the key for the y vector component |
'vC'
|
case
|
int
|
case giving the index of the speed array |
0
|
Returns:
| Name | Type | Description |
|---|---|---|
traveltime |
float
|
the time to travel the line segment |
distance |
float
|
the distance along the line segment |