Daniel J. Hofmann
9b83649a03
Fixes AppVeyor tests
2017-11-06 14:38:21 -05:00
Daniel J. Hofmann
aed7bd852d
Prints turn types and modifiers as strings
2017-11-06 14:38:21 -05:00
Daniel J. Hofmann
c5b48e3506
Adds a statistics handler for turn types and modifiers
2017-11-06 14:38:21 -05:00
Kajari Ghosh
73f4e1d45a
update changelog
2017-11-06 13:34:02 -05:00
Kajari Ghosh
cbc96ec492
refactor ExtractionTurn and ProcessTurn c++ code
2017-11-06 13:34:02 -05:00
Denis Koronchik
0fc6903d7e
Fix issue #4585
2017-10-25 14:11:33 +02:00
Moritz Kobitzsch
23fd27422b
normalise angles only if an improvement
2017-10-25 10:17:14 +02:00
Moritz Kobitzsch
910ee0829f
make circular detection covered again
2017-10-23 09:06:59 +02:00
Moritz Kobitzsch
704cf314d4
explicitly check for 90 degree turns / turning onto segregated roads
2017-10-23 09:06:59 +02:00
Moritz Kobitzsch
b8651bfac9
do not merge segregated highways in if there is actual turns involved
2017-10-23 09:06:59 +02:00
Denis Koronchik
895f072425
Work on forward/backward ref's support
2017-10-19 15:18:25 +01:00
Michael Krasnyk
088d4edc6b
Prevent merging of circular-shaped roads
2017-10-17 11:27:09 +02:00
Denis Koronchik
4b8daac104
Fix formatting
2017-10-16 12:15:12 +01:00
Denis Koronchik
4e5f74aebe
Fix after merge
2017-10-16 12:15:12 +01:00
Denis Koronchik
fc9a89ea8b
Support some cases for supperrelations in car.lua
2017-10-16 12:15:12 +01:00
Denis Koronchik
832cdbf566
Some fixes
2017-10-16 12:15:12 +01:00
Denis Koronchik
c42e247d87
Work on relation extract refactoring to support recursive relations (superrelations)
2017-10-16 12:15:12 +01:00
Moritz Kobitzsch
74e1d1c27a
fix pedantic warning about additional ;
2017-10-11 14:07:35 +02:00
Moritz Kobitzsch
2ddd98ee6d
simplify passing annotation data through OSRM pipeline using the node-based datastore
...
- separates node-based graph creation and compression from edge-based graph creation
- moves usage of edge-based node data-container to pre-processing as well, unifying access to node-based data
- single struct instead of separate vectors for annotation data in engine (single place of modification)
2017-10-09 18:44:43 +02:00
Michael Krasnyk
837dba2191
Don't use sliproad scenario if two name announcements are required
2017-10-09 15:35:26 +01:00
Michael Krasnyk
a7ea6e5327
Allow a single intersection in a cross-road of sliproads, #4348/3
2017-10-09 15:35:26 +01:00
Michael Krasnyk
7f8e467523
Adjust lower bound for crossroad angle in sliproads handler, #4348/2
2017-10-09 15:35:26 +01:00
Michael Krasnyk
a900f5229e
Fix case for sliproads from link via link to primary, #4348/4
2017-10-04 23:23:55 +02:00
Michael Krasnyk
11e7b6e911
Add last location memoization in Lua context
2017-10-04 10:03:42 +02:00
Michael Krasnyk
545097cf06
Don't use location cache if not needed
2017-10-04 10:03:42 +02:00
Michael Krasnyk
476bc347b4
Allow multiple GeoJSON files with locations data
2017-10-04 10:03:42 +02:00
Michael Krasnyk
095b345713
Change location data method to way:get_location_tags(key)
2017-10-04 10:03:42 +02:00
Michael Krasnyk
0f498d13f5
Access to location dependent data in Lua via way:get_location_tags()
2017-10-04 10:03:42 +02:00
Michael Krasnyk
2059f7234a
Restructure ParseOSMData method
2017-10-04 10:03:42 +02:00
Michael Krasnyk
12b2242ad5
Add osmium locations cache
2017-10-04 10:03:42 +02:00
Michael Krasnyk
a7c1967ca0
Use correct bounding box
...
For some reason
envelop = make_inverse<box_t>();
boost::geometry::expand(envelop, next);
normalizes longitude to [-180,180]
2017-10-04 10:03:42 +02:00
Michael Krasnyk
20ff138f08
Remove polygon copying overhead
2017-10-04 10:03:42 +02:00
Michael Krasnyk
421115200b
Port osmium point-in-polygon function
2017-10-04 10:03:42 +02:00
Michael Krasnyk
b15288e0ea
Add location_dependent_data unit tests
2017-10-04 10:03:42 +02:00
Michael Krasnyk
4eac861eae
Left-hand driving flag review updates
2017-10-04 10:03:42 +02:00
Michael Krasnyk
7ad9e13f1e
Add MultiPolygon support
2017-10-04 10:03:42 +02:00
Michael Krasnyk
fc39e0ce1a
Allow multiple GeoJSON files
2017-10-04 10:03:42 +02:00
Michael Krasnyk
f40b7975f2
Change from rtree.q{begin,end} to rtree.query (Boost 1.55 support)
2017-10-04 10:03:42 +02:00
Michael Krasnyk
3c399e5c28
Propagate is_left_hand_driving from profile to data facade
2017-10-04 10:03:42 +02:00
Michael Krasnyk
de942155bf
Add local left_hand_driving flag in API version 2
2017-10-04 10:03:42 +02:00
Michael Krasnyk
af3f0a4782
Use driving_side tag of location-dependent data and OSM ways
2017-10-04 10:03:42 +02:00
Michael Krasnyk
c9673741de
Added location dependent data
2017-10-04 10:03:42 +02:00
Daniel J. Hofmann
d7bcafcb59
Uses parsed len(turn:lanes) to fixup number of lanes, resolves #4472
2017-09-28 00:24:14 +02:00
Michael Krasnyk
fa1a4e8bf6
Relax strict bearings ordering condition to non-strict one, #4331
2017-09-18 21:33:00 +02:00
Michael Krasnyk
2532d56b85
Turn angle calculation needs to respect initial road order, #4331
2017-09-18 21:33:00 +02:00
Michael Krasnyk
64ad308e9d
Small ProcessElements refactoring
2017-09-14 20:00:05 +02:00
Michael Krasnyk
94169a20de
Remove RelationsContainerWrap
2017-09-14 20:00:05 +02:00
Michael Krasnyk
5ca38eee3a
Remove RelationMemberWrap and avoid data copying
2017-09-14 20:00:05 +02:00
Michael Krasnyk
f89ada7f61
Remove ExtractionRelationData wraper
2017-09-14 20:00:05 +02:00
Denis Koronchik
ff3b398e23
Review fixes
2017-09-14 20:00:05 +02:00
Denis Koronchik
84cb7865ab
Fix different compilers support
2017-09-14 20:00:05 +02:00
Denis Koronchik
75bdf114be
Review fixes
2017-09-14 20:00:05 +02:00
Denis Koronchik
c2fd64d3cc
Apply clang format
2017-09-14 20:00:05 +02:00
Denis Koronchik
f79bcc6b8d
Pass relation data to way and node functions
2017-09-14 20:00:05 +02:00
Denis Koronchik
f2b63ba0aa
LUA binding for a relation processing
2017-09-14 20:00:05 +02:00
Mateusz Loskot
fb5bd818d9
CanMergeRoad missed test of rhs instance of IntersectionShapeData
...
Avoids identical sub-expressions road_target(lhs) == intersection_node
2017-08-31 00:34:28 +02:00
Mateusz Loskot
43a4e8db12
Use user-provided osmium: 🧵 :Pool instance
...
Advantages:
* Allows to use Pool configured with user-preferred number of threads.
* If libosmium used in a shared library, this helps to prevent potential
deadlock during Pool shutdown at (after) shared library unloading.
See https://github.com/osmcode/libosmium/pull/214
Requires libosmium 2.13.0
2017-08-31 00:34:09 +02:00
Mateusz Loskot
302390696e
Remove repeated sub-expression for TurnType::Suppressed test
2017-08-31 00:33:00 +02:00
Patrick Niklaus
bc8617a9f4
Fix remaining PR comments
2017-08-21 13:00:12 +02:00
Patrick Niklaus
27324d0270
Add more tests for exclude validation
2017-08-21 13:00:12 +02:00
Patrick Niklaus
d09f5c0e3a
Avoid -> Exclude
2017-08-21 13:00:12 +02:00
Patrick Niklaus
c6be2e768a
Throw an error for invalid classes
2017-08-21 13:00:12 +02:00
Patrick Niklaus
6339395cba
Fix clang format
2017-08-21 13:00:12 +02:00
Patrick Niklaus
21686ee8a9
Add datafacade factory to select avoid flags
2017-08-21 13:00:12 +02:00
Patrick Niklaus
9c11197768
Extract avoidable combinations from profiles into ProfileProperties
2017-08-21 13:00:12 +02:00
Michael Krasnyk
20cfa159ec
Fix boost::optional construction error
2017-08-11 17:32:35 +02:00
Moritz Kobitzsch
93299d6651
handle conditional via-way restrictions
...
- refactor conditional restriction handling to not use external data (first OSM nodes on ways)
- BREAKING: changes internal file format of osrm.restrictions
- add support for general conditional penalties based on edge-based nodes (requires unique edges between nodes)
2017-08-11 11:53:25 +02:00
Moritz Kobitzsch
a17b07bc4c
fix bug in conflict resolution
2017-08-11 11:01:54 +02:00
FILLAU Jean-Maxime
a420169109
Reintroduce location for NodeRef in luabinding
2017-08-08 10:59:25 +02:00
Michael Krasnyk
a8db269fd5
Adjust lower bound for crossroad angle in sliproads handler, #4348/2
2017-08-04 14:37:13 +02:00
Michael Krasnyk
1ecc913fc2
Fix sliproad scenario with 4 roads in a target intersection, #4348/1
2017-08-04 14:07:35 +02:00
Moritz Kobitzsch
153e934ed4
shift circle angle a bit
2017-08-04 11:20:31 +02:00
Moritz Kobitzsch
bbcf343e40
compress traffic signals
...
- handle penalties within edges (not phantom nodes)
- changes model from providing penalties on turns to using additional segments
2017-08-04 11:19:32 +02:00
Michael Krasnyk
df2d4daad3
Fix gcc5 internal compilation error
2017-08-02 10:25:38 +02:00
Moritz Kobitzsch
917a36eaee
fix pedantic warnings
2017-08-01 12:27:29 +02:00
Moritz Kobitzsch
8135f08958
restructure for review remarks
2017-07-31 09:36:25 +02:00
Moritz Kobitzsch
8d0202d240
Add data structure to allow identification of via-way turns during creation of edge-based-graph
...
initial version of handling via-way turn restrictions (this is dirty)
- requires update of data structures
- requires clean-up
- requires optimisation
2017-07-31 09:36:25 +02:00
Moritz Kobitzsch
b1809d1667
pre-filter turn restrictions for validity
2017-07-31 09:36:25 +02:00
Moritz Kobitzsch
2e9a7d9c1a
refactor restriction parsing / extraction to actual types
...
Makes turn restrictions into dedicated structures and diferentiates between them via a variant.
Ensures that we do not accidentally mess up ID types within our application.
In addition this improves the restriction performance by only parsing all edges
once at the cost of (at the time of writing) 22MB in terms of main memory usage.
2017-07-31 09:36:25 +02:00
Daniel Patterson
be5fc50136
Save both forward and reverse datasources.
2017-07-27 14:45:28 -07:00
Moritz Kobitzsch
0affec8f17
handle throughabouts -- do not announce going through
2017-07-26 10:37:20 +02:00
Pepijn Schoen
d9e8caf369
Use GetPath with file names over accessing member variables
2017-07-20 12:01:05 +02:00
Pepijn Schoen
5a6dee80ac
Fix rebase problems
2017-07-20 12:01:05 +02:00
Pepijn Schoen
67fae1d1f0
rename osrm_input_path to osrm_path, clang-format
2017-07-20 12:01:05 +02:00
Pepijn Schoen
1b31099f73
superclass extractor_config with io_config
2017-07-20 12:01:05 +02:00
Patrick Niklaus
440dccb81b
Move classes to intersection object and don't emit notifications
2017-07-18 16:48:22 +00:00
Emil Tin
e413b25cd9
profiles api v2
2017-07-18 10:09:22 +00:00
Moritz Kobitzsch
f2f00b99e0
remove usage of use-lane completely
2017-07-18 11:23:46 +02:00
Michael Krasnyk
b2ed46efb5
Check activation index of EntryClass and warn if activation failed
2017-07-13 22:14:41 +00:00
Moritz Kobitzsch
30b8225812
only consider allowed entries when continuing on motorways
2017-07-13 08:59:01 +00:00
Michael Krasnyk
924a8a7e38
Remove STXXL from OSM parsing and enable in CMake by default
2017-07-11 08:23:26 +00:00
Michael Krasnyk
3940cc1641
Switch from stxxl::vector to std::vector in extractor
2017-07-11 08:23:26 +00:00
Michael Krasnyk
a498ba6537
Removed external_to_internal_node_id_map container
2017-07-11 08:23:26 +00:00
Patrick Niklaus
fef0344be0
Don't use bool flags on ExternalMemoryNode because they blow up the struct
2017-07-07 13:24:34 +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
4c7aa8f1c0
only consider narrow turns onto through streets straight
2017-07-04 22:03:04 +00:00
Daniel J. Hofmann
7d900e3b5a
Implements Exit Numbers + Names (junction:ref
way tag for now)
2017-07-04 20:58:19 +00:00
Michael Krasnyk
9d8a3e3c97
Propagate lane data across traffic lights
2017-06-29 15:10:37 +00:00
Michael Krasnyk
1b540fe0ba
Correct condition for is_going_straight_and_turns_continue
2017-06-29 15:10:37 +00:00
Michael Krasnyk
929e5a4de6
Review adjustments for driveway handler, #4151
2017-06-29 15:07:32 +00:00