Michael Krasnyk
b56a7579a8
Review updates
2018-03-20 16:33:15 +01:00
Michael Krasnyk
8b52c6c7ac
Update tests expectations and obvious detection
2018-03-20 16:33:15 +01:00
Michael Krasnyk
d166fc6a75
Restructure Obvious Turn Handling, code transfer from #4426
2018-03-20 16:33:15 +01:00
Michael Krasnyk
0fc8b6289c
Merge IntersectionShapeData and IntersectionEdgeGeometry
2018-03-05 13:19:57 +01:00
Michael Krasnyk
0f93a7dd05
Cleanup EBGF code
2018-03-05 13:19:57 +01:00
Michael Krasnyk
83588fd00f
Renumber node IDs in .osrm.maneuver_overrides
2018-02-22 11:42:33 +01:00
Daniel Patterson
5531cace7f
Support maneuver relations ( #4676 )
2018-02-10 05:32:09 +11:00
Patrick Niklaus
b96d36f482
Try initializing all of ProfileProperties for GCC 4.9
2018-02-09 17:51:58 +01:00
Patrick Niklaus
84845ffaa6
Replace optional<EdgeWeight> with constant value
2018-02-09 17:51:58 +01:00
Huyen Chau Nguyen
fa8d788bb6
Add road priority class to turn function ( #4858 )
...
* expose road priority class to turn function
* update docs
2018-02-07 11:39:02 +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
10de243556
Move guidance turn generation out of EBGF
2018-02-02 11:33:38 -05:00
Michael Krasnyk
988b6e3311
Split intersection analysis and guidance code
...
Intersection analysis occupy in osrm::extractor::intersection namespace
and guidance code osrm::guidance
2018-02-02 11:33:38 -05:00
Michael Krasnyk
36877e4de5
Move guidance pre-processing code into GUIDANCE library
2018-02-02 11:33:38 -05:00
Michael Krasnyk
77f8a4f741
Set type of trivial intersections where classes change to Suppressed
...
... instead of NoTurn
2018-01-25 11:43:44 -05:00
Huyen Chau Nguyen
61e06fcaba
Making the turn function more flexible ( #4789 )
...
* set and store highway and access classification for the turn function
* expose highway turn classification and access turn classification and speed to the lua profile turn function
* expose whether connection road at turn is incoming or outgoing
* add lua tests for exposed information to turn function
* update docs about attributes in process_turn
* add turn_classification info to docs
* adding warning if uturn and intersection dont match
* handle u turns that do not turn into intersection[0]
* split OSM link generation in an accessible coordinate function
2018-01-24 15:39:55 -05:00
Kajari Ghosh
155772f01f
Refactor isThroughStreet
/Intersection options ( #4751 )
...
* refactor isThroughStreet
* refactor HaveIdenticalName
* fix a typo in the unit tests
2018-01-19 13:49:00 -05:00
Huyen Chau Nguyen
e998c1193d
Update docs for process_turn in the profile docs ( #4786 )
...
* update correct attributes available in process turn
* make travel mode in ExtractedTurn const
* fix mismatch of struct and class
2018-01-10 11:31:24 +01:00
Michael Krasnyk
330f25eddb
Reduce extraction distance to 120 meters
...
For intersection at https://www.openstreetmap.org/node/65299217
`are_parallel` in MergableRoadDetector::HaveSameDirection is false
for South Van Ness Avenue with 150 meters
2018-01-05 17:35:11 +01:00
Michael Krasnyk
08b88bad63
Still use low precision bearings
2018-01-05 17:35:11 +01:00
Michael Krasnyk
153f9b02a5
Add low precision intersection views back
2018-01-05 17:35:11 +01:00
Michael Krasnyk
0568dca4a3
Adjust to review findings
2018-01-05 17:35:11 +01:00
Michael Krasnyk
4b9e3a8068
Remove IntersectionGenerator
2018-01-05 17:35:11 +01:00
Michael Krasnyk
db7c76d04d
Remove GetConnectedRoads from IntersectionGenerator
2018-01-05 17:35:11 +01:00
Michael Krasnyk
cc1a5ea78d
Remove usage of IntersectionGenerator in EBGF
2018-01-05 17:35:11 +01:00
Michael Krasnyk
9c033ff461
Free functions for guidance intersections analysis
2018-01-05 17:35:11 +01:00
Michael Krasnyk
e805f85407
Print statistics only for allowed turns
2018-01-05 17:35:11 +01:00
Mateusz Loskot
da4fb13aa3
Tidy up #include-s for Intel TBB headers
...
Remove unused and add missing headers.
2018-01-05 11:00:31 +01:00
Patrick Niklaus
6dd029e6ea
Restore original intend of roundabout test
...
When doing the new Lua version refactor we changed the expectation to
use `continue uturn` instead of making a whole circle in the roundabout
as the original test case. This was only the shortest path since there
was no roundabout penalty.
2017-12-26 13:28:12 +00:00
Patrick Niklaus
e45d44cb8e
Make sure we only count turns as UTurns for the turn_function
2017-12-26 13:28:12 +00:00
Patrick Niklaus
994fae0ef6
Fix formating
2017-12-05 19:09:06 +00:00
Patrick Niklaus
88ee51ba2e
const-correctness
2017-12-05 19:09:06 +00:00
Patrick Niklaus
25ee26de3b
Refactor segregated intersection classification to right module
2017-12-05 19:09:06 +00:00
karenzshea
834890cf0b
construct extract/contract configs to disable conditional restriction parsing by default
2017-11-20 16:55:17 +00:00
vng
a53794f864
Code review fixes.
2017-11-16 15:08:30 +01:00
vng
111030864c
Use segregated flag as a bit in EdgeBasedNode.
2017-11-16 15:08:30 +01:00
vng
90e361c3dc
Use immutable node-based-graph for segregated edges.
2017-11-16 15:08:30 +01:00
vng
76f793533a
Use copressed node-based graph for segregated edges check.
2017-11-16 15:08:30 +01:00
vng
ac5e095d17
Store and pass segregated flag to the data facade.
2017-11-16 15:08:30 +01:00
vng
ee7912f882
Calculating segregated node-based edges.
2017-11-16 15:08:30 +01:00
Daniel J. Hofmann
3a1bf2c85d
Slightly decreases roundabout turn radius from 25m to 15m
2017-11-07 13:45:57 -05:00
Daniel J. Hofmann
2224389fb3
Filters zero value histograms, formats numbers
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
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
704cf314d4
explicitly check for 90 degree turns / turning onto segregated roads
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
Denis Koronchik
4b8daac104
Fix formatting
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
vng
c718f140fa
Fixed c/p typo.
2017-10-14 15:05:26 +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
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
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
6468f55627
Make class_names default initialized
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
Jack Danger
79d07ef45c
Updating year on all 'Project OSRM' copyrights
2017-10-03 12:03:26 +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
5ca38eee3a
Remove RelationMemberWrap and avoid data copying
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
Denis Koronchik
a253111cbe
Add ExtractionRelation class
2017-09-14 20:00:05 +02:00
Moritz Kobitzsch
c2dc7e9cd0
use enter + exit for roundabout instructions ( #4358 )
...
* Expose roundabout/rotary exit instructions as a new instruction type.
2017-09-05 12:30:34 -07: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
84fd38ac9c
Add tests for avoid flags
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
Moritz Kobitzsch
f347efb006
detect turning onto oneways at the end of the road as non obvious
2017-08-18 16:33:11 +02:00
vng
76d5d054cb
Compilation fix.
2017-08-14 16:18:36 +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
Mateusz Loskot
80b705e997
Add workaround for Visual C++ issue with std::array in debug
...
If Visual C++ _ITERATOR_DEBUG_LEVEL > 0, then
accessing std::array<char[N], M> elements via reference to const
causes compilation error:
...\msvc\14.10.25017\include\array(181): error C2440: 'return': cannot convert from 'const char *' to 'const char (&)[256]'
Alternative workaround is to remove const qualifier from the GetClassName method.
2017-08-10 12:21:42 +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
Moritz Kobitzsch
7620d419c6
fix serialisation of conditional turn restrictions
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
Pepijn Schoen
8da40419ee
Maintain storage_config exposed API
2017-07-20 12:01:05 +02:00
Pepijn Schoen
0b5c7a97a7
Addressed comments
2017-07-20 12:01:05 +02:00
Pepijn Schoen
d9e8caf369
Use GetPath with file names over accessing member variables
2017-07-20 12:01:05 +02:00