Dennis Luxen
7c06726a35
Fix formatting
2022-12-20 18:00:11 +01:00
Dennis Luxen
a4aa153ba4
Use nested namespace
...
It's a mechanical change to modernize the code base
2022-12-11 10:17:17 +01:00
Michael Bell
d74e7b66bd
Support snapping to multiple ways at an input location ( #5953 )
...
This PR improves routing results by adding support for snapping to
multiple ways at input locations.
This means all edges at the snapped location can act as source/target
candidates for routing search, ensuring we always find the best route,
and not the one dependent on the edge selected.
2022-08-27 11:36:20 +01:00
Daniel Patterson
a67c4bf84d
Calculating durations is unavoidable due to tie-breaking minimums, but we can avoid accumulating distances if they're not requested.
2018-10-30 15:41:06 -07:00
Daniel Patterson
498259b220
Replace dynamic distance calculation for table plugin with pre-calculated distances on shortcuts, avoiding unpacking cost.
...
Adds approx 10% to total data size. Speeds up large table requests by 2 orders of magnitude.
Co-authored-by: Kajari Ghosh <ghoshkaj@gmail.com>
2018-10-30 15:41:06 -07:00
Patrick Niklaus
c459530cb6
Address PR comments
2018-05-08 15:50:25 +00:00
Kajari Ghosh
2a15e6dec8
Add support for annotations=distances in MLD
...
This commit brings feature parity with CH for the `table` pluging.
2018-05-08 15:50:25 +00:00
Kajari Ghosh
14860b62e9
Unpack paths and return total distance in matrix plugin for CH ( #4990 )
2018-04-20 18:18:55 -04:00
Michael Krasnyk
8300a6c57e
Prepare phantom nodes indices in ManyToManySearch search
2017-10-11 16:28:16 +01:00
Michael Krasnyk
29d4bca9ba
Split algorithm-specific manyToMany implementations
2017-10-11 16:28:16 +01:00
Michael Krasnyk
2715e5758b
Split MLD many-to-many method
2017-09-29 13:38:52 +02:00
Michael Krasnyk
67c85ffa4c
Restructure manyToManySearch for parallelization
2017-09-15 10:55:13 +02:00
Patrick Niklaus
49f0b1eb59
Add abstraction to change the data facade at compile time
2017-07-17 11:40:55 +00:00
Michael Krasnyk
3534203083
Generalize manyToManySearch and remove duplications
2017-07-03 14:57:52 +00:00
Michael Krasnyk
0fd71260d3
Enable ManyToManySearch in MLD
2017-07-03 14:57:52 +00:00
Michael Krasnyk
905ca69301
add Algorithm parameter to SearchEngineData
2017-04-06 10:36:40 +02:00
Michael Krasnyk
8c64b01d67
itroduce ADL via algorithm specific ch, corech and mld namespaces
2017-04-06 10:36:40 +02:00
Patrick Niklaus
3f485ac09b
Addressed PR comments by @daniel-j-h and @oxidase
2017-03-03 16:02:12 +00:00
Patrick Niklaus
922e155763
Add type traits to disable plugins for specific algorithms
2017-03-03 16:02:12 +00:00
Patrick Niklaus
436b34ffea
Refactor routing_algorithms to only contain free functions
2017-03-03 16:02:12 +00:00
Patrick Niklaus
2fa8d0f534
Port OSRM, Engine and Datafacades to be algorithm aware
2017-03-03 16:02:12 +00:00
Michael Krasnyk
25baf51a2c
Add duration to edges and use it in table plugin
2017-01-27 11:19:37 +01:00
Patrick Niklaus
279f8aabfb
Allow specifing a weight for routing that is independent of duration
2017-01-27 11:19:37 +01:00
Moritz Kobitzsch
d129b0ef24
remove templates from routing algorithms
2017-01-21 23:59:15 +01:00
Moritz Kobitzsch
8c36012653
remove CRTP leftovers in search algorithms
2017-01-20 14:11:16 +01:00
Patrick Niklaus
b8795c7341
Rename increasingly inaccuratly named distance member of QueryEdge to weight
2016-10-21 21:00:02 +02:00
Moritz Kobitzsch
73179641b1
clang-format code
2016-10-06 14:06:19 +02:00
Patrick Niklaus
1c2ead8fb8
Make DataFacade local to every request
...
This is the first step to having fine grained locking on data updates,
see issue #2570 .
2016-10-06 12:56:38 +02:00
Patrick Niklaus
6e16eab6ec
Format with clang-format 3.8
2016-05-27 21:05:04 +02:00
Patrick Niklaus
fda4656630
Implement re-enabling of PhantomNode directions after bearing filtering
2016-04-05 22:59:14 +02:00
Daniel J. Hofmann
7c30ea32bf
Runs scripts/format.sh
2016-04-05 22:58:32 +02:00
Patrick Niklaus
61744764da
Allocate correct table size
2016-04-05 22:58:32 +02:00
Patrick Niklaus
51e8318224
Fix behaviour of table if sources/destinations arrays are empty
2016-04-05 22:58:32 +02:00
Patrick Niklaus
c127aaae6b
Add table API
2016-04-05 22:58:32 +02:00
Patrick Niklaus
83addd6bba
Fix table plugin
2016-04-05 22:58:32 +02:00
Daniel J. Hofmann
d87a19b2f9
First take at distance table API re-write
2016-04-05 22:58:32 +02:00
Moritz Kobitzsch
1c1bfd7541
Fix routing when start and target are on the same segment
...
Fixes issue #1864 . Given the simple set-up:
a --> b --> c
^-----------|
This would translate into an edge based graph (ab) -> (bc),
(bc) -> (ca), (ca) -> (ab).
Starting at the end of the one-way street (ab) and going to
the beginning, the query has to find a self-loop within the
graph (ab) -> (bc) -> (ca) -> (ab), as both nodes map to the
same segment (ab).
2016-01-19 23:26:19 +01:00
Patrick Niklaus
6b18e4f7e9
Add namespace around all files
2016-01-08 01:30:52 +01:00
Patrick Niklaus
028ca5c9d9
Apply clang-format
2016-01-05 12:04:04 +01:00
Daniel J. Hofmann
685d330ee2
Remove license headers from project source files; global license
2016-01-04 19:06:32 +01:00
Patrick Niklaus
97585bb26a
Fix include paths
2016-01-03 18:47:50 +01:00
Patrick Niklaus
bfc6c9b89d
Move files in src/ include/
2016-01-03 16:37:38 +01:00