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
Siarhei Fedartsou
91895604c9
Migrate to modern TBB version ( #6300 )
2022-08-24 18:13:49 +02:00
Siarhei Fedartsou
aadc088084
Fix distance calculation consistency. ( #6315 )
...
Consolidate great circle distance calculations to use cheap ruler library.
2022-08-19 22:31:40 +01:00
Siarhei Fedartsou
06b1b980bb
Enable even more clang-tidy checks ( #6273 )
2022-07-04 21:46:59 +01:00
Daniel Patterson
50d9632ed7
Upgrade formatting to clang-format 10 ( #5895 )
...
* Update formatting tools to clang-format-10
* Reformat using clang-format-10.0.09
2020-11-26 07:21:39 -08:00
Michael Bell
96acdaf0d5
Fix osrm-contract, tests, on Windows
...
As part of graph contraction, node renumbering leads to
in-place permuting of graph state, including boolean vector elements.
std::vector<bool> returns proxy objects when referencing individual
bits. To correctly swap bool elements using MSVC, we need to explicitly
apply std::vector<bool>::swap.
Making this change fixes osrm-contract on Windows.
We also correct failing tests and other undefined behaviours
(mainly iterator access outside boundaries) highlighted by MSVC.
2020-11-15 14:22:26 +00:00
Denis Chapligin
78160c0fe4
Merge pull request #5813 from woltapp/tbbdeprecation
...
Partially fixes use of deprecated TBB features
2020-09-08 11:17:32 +03:00
Denis Chaplygin
03d9e7a8ce
Deprecated tbb::task_scheduler_init replaced with std::thread and tbb::global_control
2020-09-04 09:33:43 +03:00
Denis Chaplygin
7e24dcfd0a
Removed references to obsolete Boost.Test headers.
2020-09-02 13:16:44 +03:00
Daniel Patterson
81bc2f41a6
When matching, ignore 'is_startpoint' propert, snap to any edge ( #5297 )
...
Includes all edges in the rtree, but adds an `is_startpoint` flag to each. Most plugin behaviour remains unchanged (non-startpoint edges aren't used as snapping candidates), but for map matching, we allow snapping to any edge. This fixes map-matching across previously non-is_startpoint edges, like ferries, private service roads, and a few others.
2018-12-13 17:10:32 -07: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
8d8042ebae
Use ranges with fixed types
2018-04-09 11:05:01 +02:00
Kajari Ghosh
be123cd72f
Use ranges in datafacade instead of vectors
...
Range type must use immutable references due to a
regression in `boost::any_range`.
References:
https://svn.boost.org/trac10/ticket/10493
https://stackoverflow.com/questions/42427395/boostany-range-with-optimization-level-o2-causes-crash/42427662
2018-04-09 11:05:01 +02:00
Michael Krasnyk
bc120776f0
Don't apply unimplemented SH and PH conditions
2018-04-05 13:31:48 +02:00
Patrick Niklaus
c322d93435
Make the block size of vector<bool> consistent
2018-03-26 12:12:41 +00:00
Patrick Niklaus
c0dd5d7c76
Fix formating
2018-03-26 11:02:34 +00:00
Patrick Niklaus
a542da3678
Remove old io::FileWrite serialization code
2018-03-26 11:02:34 +00:00
Patrick Niklaus
8152dcfb4c
Port .ramIndex to tar file and mmap .fileIndex directly
2018-03-26 11:02:33 +00:00
Patrick Niklaus
b8260e44fa
Port .names file to tar
2018-03-26 11:02:04 +00:00
Patrick Niklaus
06f28ffd34
Add BufferWriter/BufferReader and simplify interface for ConditionalRestrictions
2018-03-26 11:02:04 +00:00
Patrick Niklaus
4f454a3761
Add buffer reader/writer for per-element serialization
2018-03-26 11:02:04 +00:00
Patrick Niklaus
d4300e73f3
Remove line reading interface from FileReader
2018-03-26 11:02:04 +00:00
Patrick Niklaus
2c5e4e6c02
Add test cases for range table and packed vector serialization
2018-03-26 11:02:04 +00:00
Patrick Niklaus
5d1b4ce71d
Port .osrm.icd file over to tar
2018-03-26 11:02:03 +00:00
Patrick Niklaus
aaf39162a8
Fix vector<bool> serialization for tar files and add unit tests
2018-03-26 11:02:03 +00:00
Patrick Niklaus
26e5c4eae2
Fix formating
2018-02-09 17:51:58 +01:00
Patrick Niklaus
aa1048154c
Add missing initializer around sub-object
2018-02-09 17:51:58 +01:00
Patrick Niklaus
eb1e83858a
Use BOOST_CHECK instead of BOOST_ASSERT to make tests work in release mode
2018-02-09 17:51:58 +01:00
Patrick Niklaus
b4cfc8d6e0
Fix formating
2018-02-06 11:51:33 +01:00
Patrick Niklaus
e7bb612050
Move debug printer code to own header
2018-02-06 11:51:33 +01:00
Michael Krasnyk
9e93f198ae
Add CRC checksums to EBG and turns data
2018-02-02 11:33:38 -05:00
Michael Krasnyk
088d4edc6b
Prevent merging of circular-shaped roads
2017-10-17 11:27:09 +02:00
Michael Krasnyk
b15288e0ea
Add location_dependent_data unit tests
2017-10-04 10:03:42 +02:00
Michael Krasnyk
fb02a4c674
Added bit packing for serialization of vector<bool>
2017-10-04 10:03:42 +02:00
Patrick Niklaus
61c430c098
Implement exclude flags on CH using shared core
...
The core is fully contracted for each exclude flag
and stored in a merged graph data structure.
2017-09-01 21:26:00 +02:00
Michael Krasnyk
c1ad4f6b45
Fix a single weekday grammar callback
2017-07-31 14:56:08 +02:00
Michael Krasnyk
3940cc1641
Switch from stxxl::vector to std::vector in extractor
2017-07-11 08:23:26 +00:00
Patrick Niklaus
44739f2dc3
Allow users to specify a class for each way
...
This adds the ability to mark ways with a user-defined
class in the profile. This class information will be included
in the response as property of the RouteStep object.
2017-07-06 09:17:49 +00:00
Moritz Kobitzsch
98caa0bcd9
adjust name-table checks for increased name table size
2017-07-04 20:58:19 +00:00
Daniel J. Hofmann
7d900e3b5a
Implements Exit Numbers + Names (junction:ref
way tag for now)
2017-07-04 20:58:19 +00:00
Patrick Niklaus
688b1f8bef
Remove serialization test
2017-06-27 09:58:19 +00:00
Michael Krasnyk
383640caaf
Cleanup temporary test files
2017-06-26 11:03:32 +02:00
Patrick Niklaus
97592e5bc3
Refactor file writing in OSRM contract
2017-06-23 09:22:30 +00:00
Daniel Patterson
3d77714c36
Make most command-line tools return useful error codes on well-known exceptions.
2017-06-08 15:03:24 +00:00
Patrick Niklaus
0266c9d969
Renumber nodes after running osrm-partition
...
The new numbering uses the partition information
to sort border nodes first to compactify storages
that need access indexed by border node ID.
We also get an optimized cache performance for free
sincr we can also recursively sort the nodes by cell ID.
This implements issue #3779 .
2017-06-02 18:12:13 +00:00
FILLAU Jean-Maxime
98ad9d8b61
Refactoring enum Approach in enum class.
...
Suppress "engine::"
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
c573cdb0ae
Use formating script.
...
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
FILLAU Jean-Maxime
82a149eb87
Propagating approach parameter to every phantom nodes search function.
...
Propagating approach parameter for plugins :
- tabler
- nearest
- trip
Signed-off-by: FILLAU Jean-Maxime <jean-maxime.fillau@mapotempo.com>
2017-05-30 10:19:41 +00:00
Patrick Niklaus
a544935e7d
Fix unit-test
2017-05-29 15:09:36 +00:00
Daniel Patterson
570d81c6dd
Bypass boost::numeric_cast checks for coordinate values that have already been validated ( #4059 )
...
(i.e. stuff that's stored in our datafiles). Keep those checks for user-supplied values
(i.e. coordinates coming from files during preprocessing, or coordinates supplied by users
during requests)
2017-05-19 10:52:44 -07:00