Trace a large block around sidewalks and crossings only #251
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
A simple next step towards #248 --when tracing a block, if we only consider crossings and sidewalks AND the road has sidewalks on both sides, then we wind up with a nice grouping for the "entire" junction or "entire" road including side-paths.
Here are some junctions of varying complexity:
![image](https://private-user-images.githubusercontent.com/1664407/318045917-6166c8ff-33cc-475e-99ce-9d5a8e1170a1.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkyMzI0MTQsIm5iZiI6MTczOTIzMjExNCwicGF0aCI6Ii8xNjY0NDA3LzMxODA0NTkxNy02MTY2YzhmZi0zM2NjLTQ3NWUtOTljZS05ZDVhOGUxMTcwYTEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTFUMDAwMTU0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NzFiMGYyNDUzOWJjNjVkMjkyZmVjYTEyN2MzZTZjMjJkYzhiNTVhNDliZDBmNDc2MDJlYTliOGUyZjRhOTk1NCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.jB5MTg0axJKj7zo8V4ZMj20LTQetpBoJy3LFEsaOt98)
![image](https://private-user-images.githubusercontent.com/1664407/318045978-e2f9a233-aba9-46ba-94ac-88f7a2dc4969.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkyMzI0MTQsIm5iZiI6MTczOTIzMjExNCwicGF0aCI6Ii8xNjY0NDA3LzMxODA0NTk3OC1lMmY5YTIzMy1hYmE5LTQ2YmEtOTRhYy04OGY3YTJkYzQ5NjkucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTFUMDAwMTU0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MjE5ZjQ1MTQ4MDMyYTI3NDhjNTgzNzRiZjMyM2MzYTY2YzU4Y2UwMGFiOWI2NzRhYWI1Mjk5MGYyYjc4YjMzMCZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.Kg4b_dNMOLGKkCeojcxeOViavftGYzrcXIN6dIoiLq0)
![image](https://private-user-images.githubusercontent.com/1664407/318046083-99694c51-df78-435e-9925-004aa887f7fa.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkyMzI0MTQsIm5iZiI6MTczOTIzMjExNCwicGF0aCI6Ii8xNjY0NDA3LzMxODA0NjA4My05OTY5NGM1MS1kZjc4LTQzNWUtOTkyNS0wMDRhYTg4N2Y3ZmEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTFUMDAwMTU0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZmQ3NjFhZGY2MmRkYjNjZDlkZDQxNGM1YTA1ZGI4MGE4YWQwNGMyMDRkYjhlMzIyMDY2NjY5MzQzODczNTUyMSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ._n4k-6M9xFSWeeUNDWigX1Q0n8FxXsRPSDbbKe7dsKw)
And some roads:
![image](https://private-user-images.githubusercontent.com/1664407/318046168-62ae0df6-f966-403b-bf14-962c41b5b0a6.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkyMzI0MTQsIm5iZiI6MTczOTIzMjExNCwicGF0aCI6Ii8xNjY0NDA3LzMxODA0NjE2OC02MmFlMGRmNi1mOTY2LTQwM2ItYmYxNC05NjJjNDFiNWIwYTYucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTFUMDAwMTU0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MGI2ODk4ZDI0ZDQxYTIwYzk5YWQ0YTQwNjUxYmU1OTNlODViZjY3NDFlYjc0ZDNhNTlhMzU0OTQxYzEyOWRkMiZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.TMiR30TxvqAYRyzMOmXLFlTzJGOtvEQZNfTeyO806NU)
![image](https://private-user-images.githubusercontent.com/1664407/318046334-613cf4d6-2869-44b5-b9d0-8efc071b10bd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkyMzI0MTQsIm5iZiI6MTczOTIzMjExNCwicGF0aCI6Ii8xNjY0NDA3LzMxODA0NjMzNC02MTNjZjRkNi0yODY5LTQ0YjUtYjlkMC04ZWZjMDcxYjEwYmQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI1MDIxMSUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNTAyMTFUMDAwMTU0WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9MmUxNTk1MTVjYmU2YmY2NjRlNDM3ZjM0NDlhOTU5M2ZmNTBjYjFjNTEyNzhkZTM5NmYxM2RjMjRjODdlYWM4ZSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QifQ.2aXNyCLkwUcMkeuzj8p_0qo0HSGTEHsmRSGXnF2DtNw)
I think this approach of grouping entire "bundles" of roads or junctions could be used for various purposes:
I'll merge this so people can play with it at https://osm2streets.org. Click a sidewalk, then "Trace sidewalks on left/right" (the direction is... not always consistent, but one should work). Please do comment with any interesting test cases you find, either working or not!