Fix routing when start and target are on the same segment
Fixes issue #1864. Given the simple set-up: a --> b --> c ^-----------| This would translate into an edge based graph (ab) -> (bc), (bc) -> (ca), (ca) -> (ab). Starting at the end of the one-way street (ab) and going to the beginning, the query has to find a self-loop within the graph (ab) -> (bc) -> (ca) -> (ab), as both nodes map to the same segment (ab).
This commit is contained in:
committed by
Patrick Niklaus
parent
238e77d959
commit
1c1bfd7541
@@ -29,7 +29,7 @@ Feature: Basic Distance Matrix
|
||||
| ab | primary |
|
||||
| bc | secondary |
|
||||
| cd | tertiary |
|
||||
|
||||
|
||||
When I request a travel time matrix I should get
|
||||
| | a | b | c | d |
|
||||
| a | 0 | 100 | 300 | 600 |
|
||||
@@ -49,7 +49,7 @@ Feature: Basic Distance Matrix
|
||||
| | a | b |
|
||||
| a | 0 | 95 +- 10 |
|
||||
| b | 95 ~10% | 0 |
|
||||
|
||||
|
||||
Scenario: Testbot - Travel time matrix of small grid
|
||||
Given the node map
|
||||
| a | b | c |
|
||||
@@ -82,7 +82,7 @@ Feature: Basic Distance Matrix
|
||||
| | a | b |
|
||||
| a | 0 | 100 |
|
||||
| b | | 0 |
|
||||
|
||||
|
||||
Scenario: Testbot - Travel time matrix of network with oneways
|
||||
Given the node map
|
||||
| x | a | b | y |
|
||||
@@ -136,7 +136,7 @@ Feature: Basic Distance Matrix
|
||||
| a | 100 | 200 | 300 |
|
||||
| b | 0 | 100 | 200 |
|
||||
|
||||
Scenario: Testbog - All coordinates are from same small component
|
||||
Scenario: Testbot - All coordinates are from same small component
|
||||
Given a grid size of 300 meters
|
||||
Given the extract extra arguments "--small-component-size 4"
|
||||
Given the node map
|
||||
@@ -156,7 +156,7 @@ Feature: Basic Distance Matrix
|
||||
| f | 0 | 300 |
|
||||
| g | 300 | 0 |
|
||||
|
||||
Scenario: Testbog - Coordinates are from different small component and snap to big CC
|
||||
Scenario: Testbot - Coordinates are from different small component and snap to big CC
|
||||
Given a grid size of 300 meters
|
||||
Given the extract extra arguments "--small-component-size 4"
|
||||
Given the node map
|
||||
@@ -179,3 +179,21 @@ Feature: Basic Distance Matrix
|
||||
| h | 0 | 300 | 0 | 300 |
|
||||
| i | 300 | 0 | 300 | 0 |
|
||||
|
||||
Scenario: Testbot - Travel time matrix with loops
|
||||
Given the node map
|
||||
| a | 1 | 2 | b |
|
||||
| d | 4 | 3 | c |
|
||||
|
||||
And the ways
|
||||
| nodes | oneway |
|
||||
| ab | yes |
|
||||
| bc | yes |
|
||||
| cd | yes |
|
||||
| da | yes |
|
||||
|
||||
When I request a travel time matrix I should get
|
||||
| | 1 | 2 | 3 | 4 |
|
||||
| 1 | 0 | 100 +-1 | 400 +-1 | 500 +-1 |
|
||||
| 2 | 700 +-1 | 0 | 300 +-1 | 400 +-1 |
|
||||
| 3 | 400 +-1 | 500 +-1 | 0 | 100 +-1 |
|
||||
| 4 | 300 +-1 | 400 +-1 | 700 +-1 | 0 |
|
||||
|
||||
Reference in New Issue
Block a user