routino-router(1)
๐ routino-router(1) โ the manual, but make it make sense ๐
okay bestie, gather round, because this is routino-router from section 1 of the manual pages, and she is literally the main character of route calculation. ๐บ๏ธโจ
๐ธ NAME ๐ธ
routino-router โ calculate routes using the routino database
โจ SYNOPSIS โจ
routino-router [--version] [--help | --help-profile-xml |
--help-profile-json | --help-profile-perl]
[--dir=dirname] [--prefix=name] [--profiles=filename]
[--translations=filename] [--exact-nodes-only] [--quiet]
[--loggable] [--logtime] [--logmemory] [--language=lang]
[--output-html] [--output-gpx-track] [--output-gpx-route]
[--output-text] [--output-text-all] [--output-none]
[--output-stdout] [--profile=name]
[--transport=transport] [--shortest | --quickest]
--lon1=longitude --lat1=latitude --lon2=longitude
--lat2=latitude [... --lon99=longitude --lat99=latitude]
[--reverse] [--loop] [--highway-<highway>=preference ...]
[--speed-<highway>=speed ...]
[--property-<property>=preference ...] [--oneway=0|1]
[--turns=0|1] [--weight=weight] [--height=height]
[--width=width] [--length=length]
๐ฆ DESCRIPTION ๐ฆ
so routino-router does the actual calculation of the optimum routes โ and it does it using the database that the planetsplitter(1) program generated for you earlier. it's giving glow-up-from-raw-data energy, fr fr. ๐
๐ OPTIONS ๐
--versionโ prints out the version of Routino. that's it. that's the whole thing. iconic. ๐--helpโ prints out the help info. your little bestie when you forget a flag.--help-profileโ prints out the selected transport profile (that's the type, speed limits, highway preferences, etc.). like a lil profile card but for your mode of transport. ๐ซถ--help-profile-xmlโ prints out all the loaded profiles as an XML file, in exactly the same format that can be loaded back in. round-trip queen.--help-profile-jsonโ prints out all the loaded profiles in JavaScript Object Notation (JSON) format, for use in the interactive webpage.--help-profile-perlโ prints out all the loaded profiles as a Perl object, for use in the router CGI.--dir=dirnameโ sets the directory name where the local database gets read from. defaults to the current directory. (home sweet home ๐ )--prefix=nameโ sets the filename prefix for the files in the local database. defaults to no prefix.--profiles=filenameโ sets the filename containing the list of routing profiles, in XML format. here's the chain, bestie: if the file doesn't exist, then--dirname,--prefixand"profiles.xml"get combined and used; and if that doesn't exist, then the file/usr/share/routino/profiles.xml(or your custom installation location) gets used. it's a whole fallback pipeline. ๐--translations=filenameโ sets the filename containing the list of translations, in XML format, for the output files. same fallback situation: if the file doesn't exist, then--dirname,--prefixand"translations.xml"get combined and used; and if that doesn't exist, then/usr/share/routino/translations.xml(or your custom installation location) gets used.--exact-nodes-onlyโ when it's processing the latitude and longitude points you specified, it only selects the nearest node instead of finding the nearest point within a segment. quicker, but less accurate โ unless your points are already near nodes, in which case you're fine. choose your fighter. ๐ฅ--quietโ don't generate any screen output while running. super useful for running in a script. no thoughts, head empty, just output.--loggableโ prints progress messages that are suitable for logging to a file. normally an incrementing counter gets printed, which is more suitable for real-time display than logging. so pick your vibe: pretty counter or loggable lines. โจ--logtimeโ prints the elapsed time for each processing step, in minutes, seconds and milliseconds. she's timed, she's precise, she's punctual. โฑ๏ธ--logmemoryโ prints the maximum allocated and mapped memory for each processing step, in MBytes.--language=langโ selects the language specified, from the file of translations. if you don't give this option and the file exists, then the first language in the file gets used. if you don't give this option and no file exists, then the compiled-in default language (English) gets used. multilingual baddie behavior. ๐--output-html,--output-gpx-track,--output-gpx-route,--output-text,--output-text-allโ generate the selected output file formats (HTML, GPX track file, GPX route file, plain text route and/or plain text with all nodes). here's the tea: if no output is specified, then all of them are generated, and specifying any of them automatically disables the ones you didn't specify. periodt.--output-noneโ do not generate any output, and do not read in any translations files. nothing. zero. silence. ๐คซ--output-stdoutโ write to stdout instead of to a file. requires exactly one output format option, and it implies--quiet.--profile=nameโ specifies the name of the profile to use.--transport=transportโ select the type of transport to use.transportcan be set to:foot= Foothorse= Horsewheelchair= Wheelchairbicycle= Bicyclemoped= Moped (Small motorcycle, limited speed)motorcycle= Motorcyclemotorcar= Motorcargoods= Goods (Small lorry, van)hgv= HGV (Heavy Goods Vehicle - large lorry)psv= PSV (Public Service Vehicle - bus, coach)
defaults to 'motorcar'. this option also selects the default profile information if the --profile option wasn't given, and a profile matching the transport name is found. two-for-one deal, we love to see it. ๐๐ฒ๐๐
--shortestโ find the shortest route between the waypoints.--quickestโ find the quickest route between the waypoints.--lon1=longitude,--lat1=latitude,--lon2=longitude,--lat2=latitude, ...--lon99=longitude,--lat99=latitudeโ the location of the waypoints that make up the start, middle and end points of the route. up to 99 waypoints can be specified, and the route will pass through each of the specified ones in sequence. the algorithm will use the closest node or point within a segment that allows the specified traffic type. ninety-nine. that's so many. ๐โจ--reverseโ find a route between the waypoints in reverse order. backwards but make it fashion. ๐ฆ--loopโ find a route that returns to the first waypoint after the last one. coming back around like a boomerang. ๐--heading=bearingโ specifies the initial direction of travel at the start of the route (from the lowest numbered waypoint), as a compass bearing from0to360degrees. know your direction before you go, bestie. ๐งญ--highway-<highway>=preferenceโ selects the percentage preference for using each particular type of highway. the value ofhighwaycan be selected from:motorway= Motorwaytrunk= Trunkprimary= Primarysecondary= Secondarytertiary= Tertiaryunclassified= Unclassifiedresidential= Residentialservice= Servicetrack= Trackcycleway= Cyclewaypath= Pathsteps= Stepsferry= Ferry
default value depends on the profile selected by the --transport option.
--speed-<highway>=speedโ selects the speed limit in km/hour for each type of highway. default value depends on the profile selected by the--transportoption.--property-<property>=preferenceโ selects the percentage preference for using each particular highway property. the value ofpropertycan be selected from:paved= Paved (suitable for normal wheels)multilane= Multiple lanesbridge= Bridgetunnel= Tunnelfootroute= A route marked for foot travelbicycleroute= A route marked for bicycle travel
default value depends on the profile selected by the --transport option.
--oneway==0|1โ selects whether the direction of oneway streets is to be obeyed (useful to not obey them when walking). default value depends on the profile selected by the--transportoption.--turns==0|1โ selects whether turn restrictions are to be obeyed (useful to not obey them when walking). default value depends on the profile selected by the--transportoption.--weight=weightโ specifies the weight of the mode of transport in tonnes; makes sure the weight limit on the highway is not exceeded. default value depends on the profile selected by the--transportoption.--height=heightโ specifies the height of the mode of transport in metres; makes sure the height limit on the highway is not exceeded. default value depends on the profile selected by the--transportoption.--width=widthโ specifies the width of the mode of transport in metres; makes sure the width limit on the highway is not exceeded. default value depends on the profile selected by the--transportoption.--length=lengthโ specifies the length of the mode of transport in metres; makes sure the length limit on the highway is not exceeded. default value depends on the profile selected by the--transportoption.
๐ง the preference parameter, explained (yes really, stay with me)
the meaning of the preference parameter in the command line options is slightly different for the highway preferences than it is for the property preferences. buckle up, because the math is literally in the building. ๐ข
for the highway preference, think about the choice between two possible highways between the start and the finish when you're looking for the shortest route. if highway A has a preference of 100% and highway B has a preference of 90%, then highway A will be chosen even if it's up to 11% longer (100/90 = 111%).
for the highway properties, each highway either has a particular property or it doesn't. if the preference for the property is 60%, then a highway with the property has a preference of 77% (sqrt(60%)) and a highway without it has a preference of 63% (sqrt(100-60%)). a highway with the property will be chosen even if it's up to 22% longer than one without the property (77/63 = 122%).
the overall preference for each highway segment is the product of the preference for the highway type and all of the preferences for the highway properties. multiply them all together, bestie. it's giving exponent energy. โจ๐งฎ
๐บ๏ธ EXAMPLES โจ
okay bestie, time for the fun part โ let's actually do the thing ๐
๐๏ธ example numero uno: motorcycle journey, scenic route, not very fast ๐ธ
"scenic route, not very fast" is literally the assignment here and I respect it so much ๐ซถ
routino-router --dir=data --prefix=gb --transport=motorcycle \
--highway-motorway=0 --highway-trunk=0 \
--speed-primary=80 --speed-secondary=80 \
--quickest
so what's happening here, bestie? this run is gonna pull from three files:
data/gb-nodes.memdata/gb-segments.memdata/gb-ways.mem
and it uses those to find the quickest route by motorcycle, with a very specific vibe check applied: no motorways, no trunk roads, and absolutely not exceeding 80 km/hr. periodt. no cap, that's the whole route ๐
ngl it's giving "windows down, playlist on, zero urgency" and honestly? iconic. ๐
aaaand that's a wrap on the page, bestie ๐ฆ this one came from the routino-router(1) manual, dated 03 December 2025 โ go forth and route responsibly, mwah ๐โจ
๐ฆ where this page comes from
- ubuntu resolute: routino 3.4.3-3 ยท AGPL-3.0-or-later
- ubuntu stonking: routino 3.4.3-3 ยท AGPL-3.0-or-later
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms