Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle GTFS Pathways #803

Open
abyrd opened this issue Apr 15, 2022 · 4 comments
Open

Handle GTFS Pathways #803

abyrd opened this issue Apr 15, 2022 · 4 comments

Comments

@abyrd
Copy link
Member

abyrd commented Apr 15, 2022

We are seeing problems from feeds using the GTFS pathways extension. These contain stops with location_type > 1 for which coordinates are optional. This wreaks havoc with the stop spatial index used in generating GTFS vector tiles, but that's just one symptom of the underlying need to handle non-stop, non-station transit nodes that may have no coordinates.

We need to at least gracefully tolerate feeds with these extensions, and eventually fully reconstruct the pathways within the station even when they have no coordinates.

@ansoncfit mentioned MBTA use of pathways in #642 (comment)_

abyrd added a commit that referenced this issue Apr 15, 2022
This is the first step of #803.
It will gracefully ignore pathway nodes and reduce errors, but does not
yet build the routable edges inside the stations.
abyrd added a commit that referenced this issue Apr 15, 2022
This is the first step of #803.
It will gracefully ignore pathway nodes and reduce errors, but does not
yet build the routable edges inside the stations.
abyrd added a commit that referenced this issue Apr 15, 2022
@derhuerst
Copy link

[…] stops with location_type > 1 for which coordinates are optional.

Nit-pick: For entrances/exits (location_type = 2), coordinates are required.

The challenge described persists of course.

@derhuerst
Copy link

I'm curious if and how this would affect other implementations, and therefore trying to understand the problem.

Why is it a problem for routing if generic nodes (location_type = 3) and boarding areas (location_type = 4) are missing in the spatial index?

@ansoncfit
Copy link
Member

Fully reconstructing pathways would help address #330

@abyrd
Copy link
Member Author

abyrd commented May 10, 2022

@derhuerst it's not a problem that these nodes are not in the spatial index. The problem was that the nodes without coordinates had coordinate values of NaN which broke the sort algorithm in the spatial index. This didn't just leave them out of the index, it caused a failure when opening the feed.

Indeed my initial comment was wrong with respect to location_type = 2 - the conditions in the PR should now exactly match the rules in the spec.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants