Skip to main content

Module network

Module network 

Source
Expand description

Network analysis for geospatial routing and accessibility

This module provides comprehensive network analysis capabilities:

  • Graph structures: Build network graphs from vector data with directed/undirected support
  • Edge weights: Multi-criteria weights (distance, time, monetary cost)
  • Graph validation: Structural integrity checks, self-loop/parallel edge detection
  • Topology cleaning: Snap nodes, remove duplicates, contract degree-2 chains
  • Shortest path: Dijkstra, A*, bidirectional search, Floyd-Warshall
  • Turn restrictions: Edge-based pathfinding with turn penalties and prohibitions
  • Time-dependent routing: Variable edge costs based on time of day
  • Service areas: Calculate isochrones and accessibility zones
  • Multi-facility: Service areas from multiple origins with overlap detection
  • Routing: Advanced routing with turn penalties, alternatives, waypoint optimization

All algorithms are optimized for large-scale geospatial networks.

Structs§

AccessibilityResult
Result of accessibility analysis
AllPairsResult
All-pairs shortest paths result
ConnectedComponent
Connected component information
Edge
An edge in the network graph
EdgeId
Unique identifier for an edge in the graph
EdgeWeight
Multi-criteria edge weight supporting distance, time, and custom costs
Graph
A network graph for spatial analysis
GraphBuilder
Builder for constructing graphs from geospatial data
GraphMetrics
Graph metrics for analysis
Isochrone
An isochrone (contour of equal travel time/distance)
IsochroneOptions
Options for isochrone calculation
MultiFacilityResult
Multi-facility service area result
NetworkEdge
An edge in a network (with richer semantics)
NetworkNode
A node in a network (with richer semantics)
Node
A node in the network graph
NodeId
Unique identifier for a node in the graph
OverlapZone
An overlap zone between two or more facilities
Route
A complete route
RouteOptions
Routing options
RouteResult
Result of multi-route calculation
RouteSegment
A route segment
RoutingCriteria
Multi-criteria weight specification
ServiceArea
A service area result
ServiceAreaInterval
A single service area interval (break value)
ServiceAreaOptions
Options for service area calculation
ShortestPath
Result of a shortest path computation
ShortestPathOptions
Options for shortest path computation
TimeDependentWeight
Time-dependent weight function
TopologyCleanResult
Result of topology cleaning
TurnPenalties
Collection of turn penalties for a graph
TurnPenalty
Turn penalty specification between two edges meeting at a node
TurnRestriction
Turn restriction type
ValidationIssue
A single validation issue
ValidationResult
Result of graph validation containing all detected issues
WaypointOptimizationResult
Result of waypoint order optimization

Enums§

GraphType
Specifies whether the graph is directed or undirected
IsochronePolygonMethod
Method for generating isochrone polygons
PathFindingAlgorithm
Algorithm to use for pathfinding
RoadClass
Road classification for routing
RoutingAlgorithm
Routing algorithm variant
ServiceAreaCostType
What cost metric to use for service area computation
ValidationSeverity
Severity level for validation issues

Functions§

accessibility_score
Calculate accessibility score for a node based on how many facilities/destinations can be reached within cost thresholds
astar_search
Find shortest path using A* algorithm
astar_turn_restricted
Find shortest path using A* with turn restrictions
bidirectional_search
Find shortest path using bidirectional Dijkstra
calculate_drive_time_polygons
Calculate drive-time polygons (isochrones using travel time)
calculate_isochrones
Calculate isochrones from a starting point
calculate_multi_facility_service_area
Calculate multi-facility service areas
calculate_multi_isochrones
Calculate isochrones from multiple origins (multi-facility isochrones)
calculate_route
Calculate a route between two points
calculate_route_with_alternatives
Calculate route with alternative routes
calculate_routes_batch
Calculate multiple routes in batch
calculate_service_area
Calculate service area from a starting node
dijkstra_search
Find shortest path using Dijkstra’s algorithm
dijkstra_single_source
Single-source shortest paths (Dijkstra from one source to all reachable nodes)
dijkstra_turn_restricted
Find shortest path using Dijkstra with turn restrictions
floyd_warshall
Floyd-Warshall all-pairs shortest paths
haversine_distance
Haversine distance between two geographic coordinates (in meters)
od_matrix
Origin-destination matrix computation
optimize_waypoint_order
Optimize the order of waypoints to minimize total route cost Uses nearest-neighbor heuristic followed by 2-opt improvement
time_dependent_dijkstra
Time-dependent Dijkstra search