diff options
author | Добрый Ээх <dobriy-eeh@users.noreply.github.com> | 2016-12-21 17:27:00 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-21 17:27:00 +0300 |
commit | a0400256758257ebd8c844ddb7b6eaa64cc2627e (patch) | |
tree | a0910bf901e7e0f5e0aeab86dba1dd97e97278e3 | |
parent | c39e7ebd54240691986216111bd315894bd8781c (diff) | |
parent | 32b7c5c474613402dec4726fe530fc7a412be603 (diff) |
Merge pull request #5079 from bykoianko/release-70-making-all-roundabout-as-onewayios-release-7.0.4beta-539android-release-7.0.5
[RELEASE ONLY] Considering all roundabout as one way roads.
-rw-r--r-- | routing/vehicle_model.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/routing/vehicle_model.cpp b/routing/vehicle_model.cpp index 47724d7313..9176375b34 100644 --- a/routing/vehicle_model.cpp +++ b/routing/vehicle_model.cpp @@ -74,7 +74,17 @@ double VehicleModel::GetMinTypeSpeed(feature::TypesHolder const & types) const bool VehicleModel::IsOneWay(FeatureType const & f) const { - return HasOneWayType(feature::TypesHolder(f)); + // It's a hotfix for release and this code shouldn't be merge to master. + // According to osm documentation on roundabout it's implied that roundabout is one way + // road execpt for rare cases. Only 0.3% (~1200) of roundabout in the world are two-way road. + // (http://wiki.openstreetmap.org/wiki/Tag:junction%3Droundabout) + // It should be processed on map generation stage together with other implied one way features + // rules like: motorway_link (if not set oneway == "no") + // motorway (if not set oneway == "no"). Please see + // https://github.com/mapsme/omim/blob/master/3party/osrm/osrm-backend/profiles/car.lua#L392 + // for further details. + // TODO(@Zverik, @bykoianko) Please process the rules on map generation stage. + return HasOneWayType(feature::TypesHolder(f)) || ftypes::IsRoundAboutChecker::Instance()(f); } bool VehicleModel::HasOneWayType(feature::TypesHolder const & types) const |