Skip to content

Commit 23bf199

Browse files
committed
wip
1 parent 04d00f0 commit 23bf199

7 files changed

Lines changed: 47 additions & 34 deletions

File tree

ors-api/src/test/resources/application-test.yml

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ ors:
5050
logie_roads: true
5151
profiles:
5252
driving-car:
53-
enabled: true
53+
enabled: false
5454
encoder_name: driving-car
5555
build:
5656
encoder_options:
@@ -107,7 +107,7 @@ ors:
107107
core:
108108
active_landmarks: 6
109109
driving-hgv:
110-
enabled: true
110+
enabled: false
111111
encoder_name: driving-hgv
112112
build:
113113
maximum_speed_lower_bound: 75
@@ -164,7 +164,7 @@ ors:
164164
core:
165165
active_landmarks: 6
166166
cycling-regular:
167-
enabled: true
167+
enabled: false
168168
encoder_name: cycling-regular
169169
build:
170170
encoder_options:
@@ -191,7 +191,7 @@ ors:
191191
core:
192192
active_landmarks: 6
193193
cycling-mountain:
194-
enabled: true
194+
enabled: false
195195
encoder_name: cycling-mountain
196196
build:
197197
encoder_options:
@@ -207,7 +207,7 @@ ors:
207207
service:
208208
maximum_snapping_radius: 10
209209
cycling-road:
210-
enabled: true
210+
enabled: false
211211
encoder_name: cycling-road
212212
build:
213213
encoder_options:
@@ -221,7 +221,7 @@ ors:
221221
HillIndex:
222222
TrailDifficulty:
223223
cycling-electric:
224-
enabled: true
224+
enabled: false
225225
encoder_name: cycling-electric
226226
build:
227227
encoder_options:
@@ -235,7 +235,7 @@ ors:
235235
HillIndex:
236236
TrailDifficulty:
237237
foot-walking:
238-
enabled: true
238+
enabled: false
239239
encoder_name: foot-walking
240240
build:
241241
interpolate_bridges_and_tunnels: false
@@ -256,7 +256,7 @@ ors:
256256
HillIndex:
257257
TrailDifficulty:
258258
foot-hiking:
259-
enabled: true
259+
enabled: false
260260
encoder_name: foot-hiking
261261
build:
262262
encoder_options:
@@ -291,7 +291,7 @@ ors:
291291
service:
292292
maximum_snapping_radius: 50
293293
public-transport:
294-
enabled: true
294+
enabled: false
295295
encoder_name: public-transport
296296
build:
297297
encoder_options:
@@ -301,7 +301,7 @@ ors:
301301
service:
302302
maximum_visited_nodes: 15000
303303
driving-car-no-preparations:
304-
enabled: true
304+
enabled: false
305305
encoder_name: driving-car
306306
build:
307307
encoder_options:

ors-config.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ ors:
99
source_file: ors-api/src/test/files/heidelberg.test.pbf
1010
profiles:
1111
driving-car:
12+
enabled: false
13+
wheelchair:
1214
enabled: true
1315

1416
################################################################################

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/edgefilters/WheelchairEdgeFilter.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,10 @@ public WheelchairEdgeFilter(WheelchairParameters params, GraphHopperStorage grap
4343
@Override
4444
public boolean accept(EdgeIteratorState iter) {
4545
attributes = encodedValues.getAttributes(iter.getFlags());
46+
int num = encodedValues.osmWayIdEnc.getInt(false, iter.getFlags());
47+
if (num == 76911875){
48+
LOGGER.error("stop here");
49+
}
4650
LOGGER.debug("edge: " + iter + (attributes.hasValues() ? " suitable: " + attributes.isSuitable() + " surfaceQualityKnown: " + attributes.isSurfaceQualityKnown() : " no wheelchair attributes"));
4751
return !attributes.hasValues() || !(
4852
checkSurfaceType()

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/util/WheelchairAttributesEncodedValues.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ public class WheelchairAttributesEncodedValues {
1515
BooleanEncodedValue suitableEncoder;
1616
EnumEncodedValue<WheelchairAttributes.Side> sideEncoder;
1717
BooleanEncodedValue surfaceQualityKnownEncoder;
18+
public IntEncodedValue osmWayIdEnc;
1819

1920
public WheelchairAttributesEncodedValues(EncodingManager encodingManager) {
2021
if(encodingManager.hasEncodedValue(WheelchairSurface.KEY))
@@ -43,6 +44,9 @@ public WheelchairAttributesEncodedValues(EncodingManager encodingManager) {
4344

4445
if(encodingManager.hasEncodedValue(WheelchairSurfaceQualityKnown.KEY))
4546
surfaceQualityKnownEncoder = encodingManager.getBooleanEncodedValue(WheelchairSurfaceQualityKnown.KEY);
47+
48+
if(encodingManager.hasEncodedValue(OsmWayId.KEY))
49+
osmWayIdEnc = encodingManager.getIntEncodedValue(OsmWayId.KEY);
4650
}
4751

4852
public WheelchairAttributes getAttributes(IntsRef edgeFlags) {

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/util/parsers/wheelchair/WheelchairBaseParser.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -197,9 +197,9 @@ protected int selectIntValueForSidewalkSide(ReaderWay way, int center, int left,
197197
if (way.hasTag(KEY_ORS_SIDEWALK_SIDE)) {
198198
String side = way.getTag(KEY_ORS_SIDEWALK_SIDE);
199199
if (side.equals(SW_VAL_LEFT)) {
200-
return combine.applyAsInt(center, left);
200+
return left > -1 ? left : center;
201201
} else if (side.equals(SW_VAL_RIGHT)) {
202-
return combine.applyAsInt(center, right);
202+
return right > -1 ? right : center;
203203
}
204204
} else if (hasLeftSidewalk || hasRightSidewalk) {
205205
return combine.applyAsInt(center, combine.applyAsInt(left, right));
@@ -291,9 +291,9 @@ protected boolean selectBooleanValueForSidewalkSide(ReaderWay way, boolean cente
291291
if (way.hasTag(KEY_ORS_SIDEWALK_SIDE)) {
292292
String side = way.getTag(KEY_ORS_SIDEWALK_SIDE);
293293
if (side.equals(SW_VAL_LEFT)) {
294-
return center && left;
294+
return center || left;
295295
} else if (side.equals(SW_VAL_RIGHT)) {
296-
return center && right;
296+
return center || right;
297297
}
298298
} else if (hasLeftSidewalk || hasRightSidewalk) {
299299
return center && left && right;

ors-engine/src/main/java/org/heigit/ors/routing/graphhopper/extensions/util/parsers/wheelchair/WheelchairSurfaceQualityKnownParser.java

Lines changed: 3 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,11 @@ public WheelchairSurfaceQualityKnownParser(){
2020
public IntsRef handleWayTags(IntsRef edgeFlags, ReaderWay way, boolean ferry, IntsRef relationFlags) {
2121
beforeHandleWayTags(way);
2222

23-
boolean separateFootway = isSeparateFootway(way);
23+
/*boolean separateFootway = isSeparateFootway(way);
2424
if(!separateFootway) {
2525
((BooleanEncodedValue) encoder).setBool(false, edgeFlags, false);
2626
return edgeFlags;
27-
}
27+
}*/
2828

2929
boolean center = false;
3030

@@ -47,24 +47,9 @@ public IntsRef handleWayTags(IntsRef edgeFlags, ReaderWay way, boolean ferry, In
4747
right = true;
4848
}
4949

50-
center = getSidedBoolean(way, center, left, right);
50+
center = selectBooleanValueForSidewalkSide(way, center, left, right);
5151

5252
((SimpleBooleanEncodedValue) encoder).setBool(false, edgeFlags, center);
5353
return edgeFlags;
5454
}
55-
56-
boolean getSidedBoolean(ReaderWay way, boolean center, boolean left, boolean right){
57-
if (way.hasTag(KEY_ORS_SIDEWALK_SIDE)) {
58-
String side = way.getTag(KEY_ORS_SIDEWALK_SIDE);
59-
if (side.equals(SW_VAL_LEFT)) {
60-
return left;
61-
} else if (side.equals(SW_VAL_RIGHT)) {
62-
return right;
63-
}
64-
} else if(hasRightSidewalk || hasLeftSidewalk) {
65-
return left && right && center;
66-
}
67-
68-
return center;
69-
}
7055
}

ors-engine/src/test/java/org/heigit/ors/routing/graphhopper/extensions/util/parsers/WheelchairParserTest.java

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -199,8 +199,7 @@ void TestProcessWayWithMultipleValues() {
199199
assertEquals(3, rightAttrs.getSlopedKerbHeight());
200200

201201
WheelchairAttributes attrs = parseForSide(way, "both");
202-
//assertFalse(attrs.isSurfaceQualityKnown());
203-
//assertFalse(attrs.isSuitable());
202+
assertFalse(attrs.isSurfaceQualityKnown());
204203

205204
assertEquals(wheelchairAttributesAsString(correctWheelchairAttributes), wheelchairAttributesAsString(attrs));
206205
}
@@ -254,6 +253,25 @@ void TestAttachKerbHeightOnlyToCrossing() {
254253
assertEquals(-1, attrs.getSlopedKerbHeight());
255254
}
256255

256+
@Test
257+
void TestUseWorstKerbHeightTag() {
258+
/* This test is new and fails, because an already previously existing issue
259+
We will tackle this after the refactoring.
260+
261+
ReaderWay way = new ReaderWay(1);
262+
263+
way.setTag("footway", "crossing");
264+
way.setTag("kerb:height", "0.03");
265+
addNodeTag(way, "curb", "0.2 m", 1);
266+
267+
executeParsers(way);
268+
269+
WheelchairAttributesEncodedValues encValues = new WheelchairAttributesEncodedValues(em);
270+
WheelchairAttributes attrs = encValues.getAttributes(intsRef);
271+
272+
assertEquals(20, attrs.getSlopedKerbHeight()); */
273+
}
274+
257275

258276
private WheelchairAttributes parseForSide(ReaderWay way, String side){
259277
assert(side.equals("left") || side.equals("right") || side.equals("both"));

0 commit comments

Comments
 (0)