Comments (5)
Hi, thanks for trying things out. We have movements between road segments started today, but no lane-to-lane turning movements yet. When that's started, we'll mostly use heuristics to figure out which lanes lead to which others, but when connectivity is mapped, definitely use it.
I also noticed there's a crash in rendering intersection markings nearby at https://a-b-street.github.io/osm2streets/#17.62/27.941355/-82.458842. I'll fix that, then maybe look into why the 3-way junction at the start of the bridge looks so bad. That's just a case of intersection geometry with the slip lane and crossing interacting badly; lane-level turns probably wouldn't have much to do with that.
from osm2streets.
Thanks! I realized this morning that placement would help, and it kind of did. I split it such that there was a clear transition way where it moves from the middle of the two lanes to the left, then specified the placement on the left for the segment that actually touches the bridge. This kind of made it better, but not sure how the placement:transition gets handled, seems like it should be aligned such that the placement matches on both the start and the end.
I noticed a few crashes in the surrounding area, but wasn’t sure what was causing it. If you pan east to show the roundabout (Cumberland & Channelside), nothing renders there either.
Thanks for looking into it!
I’m in no way good at Rust (still learning), but if I can help somehow on the lane destination heuristics somehow, let me know.
from osm2streets.
The placement did help, but I see the problem you're hitting:
I'm not very familiar with the placement implementation, but I don't think we handle transition yet:
osm2streets/osm2streets/src/road.rs
Line 179 in 7684047
The crash should be fixed; let me know if you hit others. Something funny happened near https://www.openstreetmap.org/way/906374669, and I'm not too surprised with a tiny disconnected segment of stairs.
The hard part for lane connectivity heuristics is probably coming up with the logic and understanding edge cases. When there's time to revive the work on turns/movements, I can ping you once the scaffolding is kind of set up, if you're interested in helping with that piece!
from osm2streets.
Thank so much. I'll close this for now. I may have a use case in the near future for understanding lane connectivity, so I'd be happy to assist to get it there.
from osm2streets.
Thanks for the interest @ryancasburn-KAI. The lane connectivity is very bare-bones and using the lane connectivity relation is definitely desired. I have only really started implementing lane connectivity across intersections, which is needed to calculate the meaning of placement=transition
.
I didn't get to implementing the geometry transformations yet for supporting roads with a different position offset at the start and end.
I'll tag you for advice when I get back into the lane connectivity code.
from osm2streets.
Related Issues (20)
- Use region-specific configurable lane widths
- Publish osm2lanes NPM package HOT 2
- Handle pbf input too HOT 5
- Turn lane shows arrows where there should be none HOT 7
- Lanes for bus and bicycles not shown up HOT 2
- Design of two-way streets with priority (= only one lane) HOT 4
- Try switching to Muv HOT 20
- Revival ideas
- Improve rendering detail in Street Explorer
- Fail less often for intersection geometry HOT 4
- Crossings HOT 4
- Grouping roads/intersections together into logical units HOT 1
- Handle parking areas HOT 1
- Handle modal filters HOT 2
- Handle footway=link
- Broken intersection geometry HOT 5
- Optionally hide tunnels
- Wrong driving side for non-sovreign LHT jurisdictions inside RHT countries HOT 2
- Bring back driving side switch for special purposes HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from osm2streets.