Open quincylvania opened 1 year ago
Rendering long ferry routes at lower zoom would be pretty feasible to implement in OMT. Are there examples of ferries that are part of road route relations and/or other tagging that could indicate importance?
Are there examples of ferries that are part of road route relations and/or other tagging that could indicate importance?
Simply having motor_vehicle=yes
means a ferry should be treated like part of the road network. Unlike roads, ferries are mapped as one long way between endpoints, meaning the way length can be used as a proxy for importance.
The Cape May–Lewes ferry is part of US 9. The Ludington–Manitowoc ferry is part of US 10, but should arguably be shown at the same zooms as the Milwaukee–Muskegon ferry, which doesn't have any road relations. The network=Alaska Marine Highway
routes are legally part of the national highway system and might warrant specific care.
Great idea. Would be nice if we could find some examples of other maps that show this distinction somehow. Here's a very short bike and pedestrian only ferry that connects two bike paths https://www.openstreetmap.org/way/283817460
Simply having motor_vehicle=yes means a ferry should be treated like part of the road network
It looks like neither the transportation or transportation_name layers of OpenMapTiles contain access tagging information yet. So that's a blocker.
There is access tagging in the transportation layer. Adding new fields into the OMT database from OSM isn't really a big deal, but adding new attributes to the tiles takes a bit more care. In the transportation layer, we could perhaps populate the subclass
layer with a value that indicates a vehicle ferry. And for the shields, it would just be a matter of extending the existing route logic to include ferries.
Ok, yes I do see some access tagging in the transportation layer but it doesn't look like all access tagging is present all of the time. The bike ferry example is tagged bicycle=yes
, foot=yes
, horse=no
, motor_vehicle=no
but none of that is in the tiles.
That's right, only the main access
tag is present, and only when set to a negative value.
Unlike roads, ferries are mapped as one long way between endpoints, meaning the way length can be used as a proxy for importance.
This is usually but not always the case. Car ferry service between Manitowoc, Wisconsin, and Ludington, Michigan, is represented by a relation consisting of two ways split at the state line, due to a concurrency with U.S. 10, which has a different route relation in each state. But it’s roughly the same length as the Milwaukee–Muskegon line.
In the transportation layer, we could perhaps populate the subclass layer with a value that indicates a vehicle ferry.
Let’s continue the discussion about distinguishing between passenger and car ferries in #719. This issue about long and short ferries would be blocked on different upstream changes and require different treatment on the client side.
Regarding the specific question of length - what's the lowest zoom where we would actually want to render a ferry line -- purely from a cartographic perspective? It would be silly to render the ferry line to Tristan da Cunha at z0 even though it'd technically be visible.
Generally speaking I would show ferries at the same zooms as roads of corresponding importance. Since US interstates appear at z4, I'd try showing the major Alaska Marine Highway routes at this zoom too.
Here is a sample rendering I generated using openmaptiles/openmaptiles#1486:
For lower zooms, we could probably de-emphasize the line treatment a bit.
Since US interstates appear at z4, I'd try showing the major Alaska Marine Highway routes at this zoom too.
I would’ve thought the Alaska Marine Highway would be analogous to the network of highway=trunk
, which doesn’t come in until z5. Even Alaska’s unsigned Interstates aren’t even necessarily freeways.
Long-distance ferries are now rendered at lower zooms now that openmaptiles/openmaptiles#1486 has been merged and will become generally available after the next openmaptiles/planetiler release.
Ferry routes are a fundamental part of the road network, whether connecting islands or saving hours of driving. Currently, americana renders all ferries at z11 and higher. This is fine for short, walk-on ferry routes, but isn't great for routes that essentially act as segments of interstate highways. Osm-carto renders all ferries at z8, but that makes dense ferry harbors messy and still ignores important ferries at low zooms.
I suggest that we find a way to classify ferry routes and display them based on their importance, the same way we do with roads. OSM doesn't really have ferry classifications (
primary
/secondary
/etc.), but we could get a long way just looking at a way's length and its relations.See #488 for the rendering of shields on ferry routes.
Long vehicle ferries:
Note that long non-vehicle ferries also exist, and should be treated differently than road ferries since you can't use them as links between highways. See #719 for the differentiating the rendering of vehicle ferries from non-vehicle ferries.
Long non-vehicle ferries: