Skip to content

Commit 9ce7443

Browse files
steventebrinkeaoles
authored andcommitted
feat: allow surface types to downgrade only
1 parent ab6b5b5 commit 9ce7443

File tree

2 files changed

+14
-43
lines changed

2 files changed

+14
-43
lines changed

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/flagencoders/bike/CommonBikeFlagEncoder.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -821,6 +821,10 @@ protected void setSurfaceSpeed(String surface, int speed) {
821821
surfaceSpeeds.put(surface, new SpeedValue(speed));
822822
}
823823

824+
protected void setSurfaceSpeed(String surface, int speed, UpdateType type) {
825+
surfaceSpeeds.put(surface, new SpeedValue(speed, type));
826+
}
827+
824828
protected void setSurfaceSpeed(String surface, SpeedValue speed) {
825829
surfaceSpeeds.put(surface, speed);
826830
}

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/flagencoders/bike/RoadBikeFlagEncoder.java

Lines changed: 10 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -88,16 +88,16 @@ public RoadBikeFlagEncoder(int speedBits, double speedFactor, int maxTurnCosts,
8888
setTrackTypeSpeed("grade4", PUSHING_SECTION_SPEED);
8989
setTrackTypeSpeed("grade5", PUSHING_SECTION_SPEED);
9090

91-
setSurfaceSpeed("paved", 20);
92-
setSurfaceSpeed("asphalt", 20);
93-
setSurfaceSpeed("cobblestone", 10);
94-
setSurfaceSpeed("cobblestone:flattened", 10);
95-
setSurfaceSpeed("sett", 10);
96-
setSurfaceSpeed("concrete", 20);
97-
setSurfaceSpeed("concrete:lanes", 16);
98-
setSurfaceSpeed("concrete:plates", 16);
99-
setSurfaceSpeed("paving_stones", 10);
100-
setSurfaceSpeed("paving_stones:30", 10);
91+
setSurfaceSpeed("paved", 26, UpdateType.DOWNGRADE_ONLY);
92+
setSurfaceSpeed("asphalt", 26, UpdateType.DOWNGRADE_ONLY);
93+
setSurfaceSpeed("cobblestone", 10, UpdateType.DOWNGRADE_ONLY);
94+
setSurfaceSpeed("cobblestone:flattened", 10, UpdateType.DOWNGRADE_ONLY);
95+
setSurfaceSpeed("sett", 10, UpdateType.DOWNGRADE_ONLY);
96+
setSurfaceSpeed("concrete", 26, UpdateType.DOWNGRADE_ONLY);
97+
setSurfaceSpeed("concrete:lanes", 16, UpdateType.DOWNGRADE_ONLY);
98+
setSurfaceSpeed("concrete:plates", 16, UpdateType.DOWNGRADE_ONLY);
99+
setSurfaceSpeed("paving_stones", 10, UpdateType.DOWNGRADE_ONLY);
100+
setSurfaceSpeed("paving_stones:30", 10, UpdateType.DOWNGRADE_ONLY);
101101
setSurfaceSpeed("unpaved", PUSHING_SECTION_SPEED / 2);
102102
setSurfaceSpeed("compacted", PUSHING_SECTION_SPEED / 2);
103103
setSurfaceSpeed("dirt", PUSHING_SECTION_SPEED / 2);
@@ -147,44 +147,11 @@ public RoadBikeFlagEncoder(int speedBits, double speedFactor, int maxTurnCosts,
147147
setAvoidSpeedLimit(81);
148148
setSpecificClassBicycle("roadcycling");
149149

150-
// MARQ24 MOD START
151-
//**********************************************************************
152-
// REQUIRED ADDON OR OVERWRITE OF Default GH-RoadBikeProfile
153-
// created by MARQ24
154-
//**********************************************************************
155-
156-
// adjusted speeds...
157-
setHighwaySpeed(VAL_RESIDENTIAL, new SpeedValue(18, UpdateType.DOWNGRADE_ONLY));
158-
159-
// make sure that we will avoid 'cycleway' & 'service' ways where ever
160-
// it is possible...
161-
setHighwaySpeed("cycleway", new SpeedValue(8, UpdateType.DOWNGRADE_ONLY));
162-
setHighwaySpeed(VAL_SERVICE, new SpeedValue(8, UpdateType.DOWNGRADE_ONLY));
163-
164-
// overwriting also the SurfaceSpeeds... to the "max" of the residential speed
165-
setSurfaceSpeed("paved", new SpeedValue(18, UpdateType.UPGRADE_ONLY));
166-
setSurfaceSpeed("asphalt", new SpeedValue(18, UpdateType.UPGRADE_ONLY));
167-
setSurfaceSpeed("concrete", new SpeedValue(18, UpdateType.UPGRADE_ONLY));
168-
169-
setSurfaceSpeed("concrete:lanes", new SpeedValue(16, UpdateType.UPGRADE_ONLY));
170-
setSurfaceSpeed("concrete:plates", new SpeedValue(16, UpdateType.UPGRADE_ONLY));
171-
setSurfaceSpeed("paving_stones", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
172-
setSurfaceSpeed("paving_stones:30", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
173-
setSurfaceSpeed("cobblestone", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
174-
setSurfaceSpeed("cobblestone:flattened", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
175-
setSurfaceSpeed("sett", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
176-
177-
// overwriting also the trackTypeSpeeds... to the "max" of the residential speed
178-
setTrackTypeSpeed(VAL_GRADE_1, new SpeedValue(18, UpdateType.UPGRADE_ONLY));
179-
setTrackTypeSpeed("grade2", new SpeedValue(10, UpdateType.UPGRADE_ONLY));
180-
181150
// HSW - asphalt cycleway vs asphalt roundabout
182151
// http://localhost:3035/directions?n1=51.965101&n2=8.24595&n3=18&a=51.965555,8.243968,51.964878,8.245057&b=1c&c=0&g1=-1&g2=0&h2=3&k1=en-US&k2=km
183152

184153
// Aschloh roundabout vs cycleway (cycle relation) & service shortcut
185154
// http://localhost:3035/directions?n1=52.064701&n2=8.386386&n3=19&a=52.065407,8.386171,52.064821,8.386833&b=1c&c=0&g1=-1&g2=0&h2=3&k1=en-US&k2=km
186-
LOGGER.info("NextGen RoadBike FlagEncoder is active...");
187-
// MARQ24 MOD END
188155
}
189156

190157
public double getMeanSpeed() {

0 commit comments

Comments
 (0)