Liking cljdoc? Tell your friends :D

hiposfer.kamal.router.algorithms.core

No vars found in this namespace.

hiposfer.kamal.router.directions

collection of functions to provide routing directions based on Open Street Maps and General Transit Feed Specification data. It follows (as close as possible) the MapBox v5 directions specification.

The algorithm provides a single route between the first and last coordinate. It works as follows:

  • create a Dijkstra collection to find the shortest path
  • take the sequence and split it into 'pieces'
  • each piece is a subsection of the complete route with a common 'context'. The 'context' is the road name or the stop name
  • loop over the pieces to create instructions based on each previous, current and next piece
collection of functions to provide routing directions based on Open Street
Maps and General Transit Feed Specification data. It follows (as close
as possible) the MapBox v5 directions specification.

The algorithm provides a single route between the first and last coordinate.
It works as follows:
- create a Dijkstra collection to find the shortest path
- take the sequence and split it into 'pieces'
 - each piece is a subsection of the complete route with a common 'context'.
  The 'context' is the road name or the stop name
- loop over the pieces to create instructions based on each previous, current
  and next piece
raw docstring

hiposfer.kamal.router.graph

functions to transform a Datascript representation to an Int-Map for super-fast lookups and Dijkstra routing

functions to transform a Datascript representation to an Int-Map for
super-fast lookups and Dijkstra routing
raw docstring

hiposfer.kamal.router.io.gtfs

namespace for handling GTFS to Datascript convertion and vice versa.

The algorithms coerces GTFS csv files into entities that reference each other through IDs. The IDs are taken directly from GTFS.

A small dynamic renaming is performed to make it more compatible with Datascript design. The renaming is based on the GTFS naming convention, for example: stop_lon, stop_url, trip_id, trip_headsign.

We transform those strings into: :stop/lon, :stop/url, :trip/id, :trip/headsign, respectively.

This is important to be able to create relationships between entities through transactions, for example {:trip/id 1, :trip/route [:route/id 1]}. This allows us to create relationships between entities without using java references ... just data

namespace for handling GTFS to Datascript convertion and vice versa.

The algorithms coerces GTFS csv files into entities that reference
each other through IDs. The IDs are taken directly from GTFS.

A small dynamic renaming is performed to make it more compatible
with Datascript design. The renaming is based on the GTFS naming
convention, for example: stop_lon, stop_url, trip_id, trip_headsign.

We transform those strings into: :stop/lon, :stop/url, :trip/id,
:trip/headsign, respectively.

This is important to be able to create relationships between entities through
transactions, for example {:trip/id 1, :trip/route [:route/id 1]}. This
allows us to create relationships between entities without using java references
... just data
raw docstring

hiposfer.kamal.router.transit

collection of functions related to the use of GTFS feed on routing networks.

collection of functions related to the use of GTFS feed on routing
networks.
raw docstring

hiposfer.kamal.router.util.fastq

namespace for hand-optimized queries that are used inside the routing algorithm and need to run extremely fast (< 1 ms per query)

By convention all queries here return Entities

namespace for hand-optimized queries that are used inside the routing
algorithm and need to run extremely fast (< 1 ms per query)

By convention all queries here return Entities
raw docstring

hiposfer.kamal.router.util.misc

useful functions that have not found a proper place yet

useful functions that have not found a proper place yet
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close