ZeLonewolf / openstreetmap-americana

A quintessentially American map style
https://zelonewolf.github.io/openstreetmap-americana
Creative Commons Zero v1.0 Universal
175 stars 56 forks source link

Urban cores / independent cities #299

Open bgo-eiu opened 2 years ago

bgo-eiu commented 2 years ago

Learning about this project's objectives and thinking about what it means to have a map that reflects what locals might expect to see on a map of Baltimore, a city where highway shields are rarely used and don't bear much significance for navigation, I wanted to start a brainstorming thread about ideas for rendering in cities that don't fit the motorway map mold very well. Baltimore's situation is in part related to its independence from the rest of Maryland in various respects - the state highway administration does not maintain any of our roads - and to its built environment, which is dense and reflects planning from prior to the proliferation of the automobile. Driving is not the default mode of transportation here. There are at least a few other cities like this, Washington, DC being the first that comes to mind.

Important note to make is that major updates would be required to the OSM database before it makes sense to implement anything here. As @claysmalley pointed out, part of the reason why Baltimore looked weird in Americana is that unsigned_ref has not been tagged where it should be. When I went to look at that, I also realized the functional classifications of the whole road network were really out of whack - there were major corridors marked as "minor unclassified." I am working to shift it to something more in line with the 2021 road classification guidelines on the wiki.

These are some initial observations of patterns which apply to Baltimore and Washington, DC; please share if there are any other cities which merit discussion here. (Possibly the whole Northeast corridor? Philadelphia, NYC, and the various smaller but long-standing cities in between like Wilmington, DE and Newark, NJ.)

Any thoughts on this topic and what might be tenable for rendering would be appreciated.

bgo-eiu commented 2 years ago

Tentative lists of...

States/equivalents that have "heavy rail" rapid transit systems (typically they cross cities and it would be useful to show the stops across the network:

Northeast corridor cities with denser/older built environments:

claysmalley commented 2 years ago

I also realized the functional classifications of the whole road network were really out of whack - there were major corridors marked as "minor unclassified." I am working to shift it to something more in line with the 2021 road classification guidelines on the wiki.

If you aren't in them already, join the #highway-classification and #local-maryland channels on the OSM-US Slack. Maryland has a somewhat active community of local mappers, and highway classification is a heavily discussed topic nationwide. I'm sure they'd like to hear about your plans.

  • Public transit symbology is recognizable and systemized in a way analogous to highway shields. The Maryland MUTCD book includes signage for both the Baltimore and DC Metro subway systems. Even for people using other transportation modes like driving, people are used to seeing the little "M" nodes on maps that anchor locations and refer to places in relation to train stop names.

Railway station icons and labels are on our roadmap. I expect version 1.0.0 will only have generic station icons that look the same globally, but station icons that imitate the design used by each transit system would be a feature I'd love for us to support in the future. After all, we're using the network=* tag to distinguish highway shields; why not station icons?

  • Railways are thicker and darker than roads on many if not most maps of these cities.

Good to think about as we consider how to render railways (#101). At low zoom (continent level), I think people would expect railways to render thinner than highway=motorway, but at high zoom (city level) railways can play a more significant role in the transportation network. Though it may be a challenge to make conventional rail (railway=rail) look good both in cities that have a strong commuter rail network and cities served only by freight lines.

  • The street grid is systematized and people use block numbers to navigate. On some maps, you may see the block number, or the starting and ending house numbers, in small print along each named road. In Baltimore how this works is blocks are divided into quadrants by Charles Street going North-South and Baltimore Street going East-West. Any street which crosses quadrants is divided using cardinal direction prefixes. The numbering then starts at 0 going outward from the center point of the grid.

This situation is common even in car-oriented cities. If a Houstonian news reporter tells me there's an accident at the 12800 block of Kimberley, I know it's just east of Beltway 8. Houston signposts block numbers at most intersections with numbers ending in 00. If these signs indicated addresses instead, they'd say "12900 12899" (the theoretical limit of addresses that could be assigned on either side of Beltway 8), or "12902 12859" (the closest addresses that actually exist):

A damaged stoplight in Houston looking north, with a street sign attached that reads "Kimberley Ln" along the top, "12900" in the bottom left, and "12800" in the bottom right

I would love to see an OSM renderer with block numbers. But the data is not there yet. And I'm not quite sure what the tagging would be on OSM. Block numbers are a concept related to, but not quite the same as, address numbers (and I say this as someone who manages an address database for delivery drivers). Personally, I think a "block number" tag could go on the underlying ways of the street, but I'm not sure how receptive others would be of that idea.

The alternative would be to support block numbers indirectly by just displaying addresses. In the absence of the name=* of a building, its address number is a good choice for a label, and block number can be determined by the surrounding addresses. Realistically, this is going to happen before block numbers would ever be supported in OSM.

1ec5 commented 2 years ago

Alleys, service roads, paths, pedestrian streets, and cycle ways all play a much larger role in the local transportation network than they do in other cities and suburbs. For example, there are entire neighborhoods in Baltimore that are inaccessible by car as the houses are fronted on pedestrian-only ways. (See for examples - Coldspring/Cylburn area, Latrobe Homes.)

Initially, we were focusing on lower zoom levels where a road atlas aesthetic provided a lot of grist for our development efforts. But this is a great time to be thinking about what we want in a less car-oriented map at higher zoom levels.

You might notice that roads switch from a thick black stroke to a white stroke with casing at a certain zoom level. The idea is that, eventually, we’d style high-zoom roads based on their real-world widths instead of highway classifications, just like a city tourist map. It isn’t clear yet if we can achieve a believable result on existing data. @jleedev was experimenting with Mercator projections as part of layout property expressions. If that doesn’t pan out, we might need to start looking into highway areas (area:highway).

In the meantime, #185 tracks support for pedestrian malls and plazas (highway=pedestrian), and #216 tracks other kinds of paths. Points of interest will also be important for any pedestrian-scale map: #128.

I would love to see an OSM renderer with block numbers. But the data is not there yet. And I'm not quite sure what the tagging would be on OSM. Block numbers are a concept related to, but not quite the same as, address numbers (and I say this as someone who manages an address database for delivery drivers). Personally, I think a "block number" tag could go on the underlying ways of the street, but I'm not sure how receptive others would be of that idea.

@bgo-eiu I split out #300 to discuss block numbers, since I think they’ll be relevant to any city and might be closer to being actionable.

I expect version 1.0.0 will only have generic station icons that look the same globally, but station icons that imitate the design used by each transit system would be a feature I'd love for us to support in the future. After all, we're using the network=* tag to distinguish highway shields; why not station icons?

network values are more ambiguous for public transportation routes than they are for road routes, but network:wikidata will be a great fit for this project. Instead of a steady stream of debates about how to fit network IDs in hierarchies, we can just use the name suggestion index’s coverage of public transportation networks to map QIDs to icons on Wikimedia Commons. Make sure the bus and rail services you care about are fully tagged on Wikidata, including with small logo or icon statements.

wmisener commented 2 years ago

Some support from a paper map for de-emphasizing, or even not rendering, road classifications at high zoom: this AAA map of San Francisco shows road classifications at the city-wide scale, ~10 miles across (there are three classes: "highway" in red, "main road" in thick black, and everything else in thin black). But in the couple-mile scale downtown inset on the same map, all roads are shown nearly exactly the same (US 101 along Van Ness gets a very subtle red casing). The only real distinction in the inset is between the through streets that make up the grid and the alleys/dead end streets. The latter are fairly prominent here, even though they aren't even hinted at on the city-wide scale.

IMG_7553

IMG_7558

This makes intuitive sense to me: at the city-wide context, showing the main motor vehicle routes is important. But at higher zoom, the typical user is more likely to be navigating on foot or using transit, or maybe looking for parking if they are in a car (hence the prominent parking garage rendering with a big circled P). For these uses, road classification is mostly irrelevant, and the rendering matches that. Americana seems like it's already aiming to de-emphasize road classes at high-zooms more than Carto does, but I think one could go pretty far in that direction and not lose much usability, and maybe even hewing more closely to perception in dense cities. Of course, care will be needed to consider whether you'd still want to retain those road class distinctions at the same zoom levels in more suburban or rural areas.