gravitystorm / openstreetmap-carto

A general-purpose OpenStreetMap mapnik style, in CartoCSS
Other
1.52k stars 815 forks source link

Add rendering for amenity=* and office=* #108

Closed jremillard closed 6 years ago

jremillard commented 10 years ago

Hi,

Any point that has an amenity or office tag and a name tag, should at least get its named rendered even if we don't have an icon at max zoom.

Most of the POI's in the mall are not rendered.

http://osm.org/go/ZfJD0RleX--

dieterdreist commented 10 years ago

Il giorno 09/ago/2013, alle ore 03:41, Jason Remillard notifications@github.com ha scritto:

Any point that has an amenity or office tag and a name tag, should at least get its named rendered even if we don't have an icon at max zoom.

or craft or shop

jremillard commented 10 years ago

Yes, I meant to include shop too.

dkniffin commented 10 years ago

I fixed the shop portion of this with #117.

I might submit another pull request with a generic rendering of amenity= although unlike shop=, it'll probably only be named amenities.

I can't find any instances of craft= or office= already being rendered

b108 commented 10 years ago

Craft= and office= are not rendering. That will be very good improvement to start render them.

tuxayo commented 10 years ago

I fully agree with this, when the pull request of @oddityoverseer13 will be ready, doing the same thing for office=* and amenity=* should be easy?

matthijsmelissen commented 10 years ago

We dont't want to render spelling mistakes, so we should come up with a list of tags to render.

dkniffin commented 10 years ago

Yea, we can do something very similar to #604 for office, amenity, and craft. The script I wrote can be easily adapted for that. Maybe we can come up with a different generic office, amenity, and craft icon?

matthijsmelissen commented 10 years ago

Craft is not in the database, so cannot be done straightaway. I would focus on office and amenity first. Not sure if a blacklist-system for amenity would work well, because the amenity thing key contains all kind of different things and we might not want to render most.

dieterdreist commented 10 years ago

Am 20/giu/2014 um 18:34 schrieb oddityoverseer13 notifications@github.com:

a different generic office, amenity, and craft icon?

for bigger office areas we show the information with the landuse=commercial tag

the various amenities and crafts are so different in nature that an icon doesn't give you any more information, we could simply show a name label, but then this would also display objects with typos in the tags (not desirable for this map)

pnorman commented 10 years ago

Craft is not in the database, so cannot be done straightaway

It also gets us into a tagging mess, because craft=* is not generally used for crafts, but for trades, but it's not exclusively craft=*.

dieterdreist commented 10 years ago

Am 22/giu/2014 um 20:25 schrieb Paul Norman notifications@github.com:

It also gets us into a tagging mess, because craft=* is not generally used for crafts, but for trades, but it's not exclusively craft=*.

the tag comes from the German community and was intended to mean "Handwerk" which is basically a medieval concept but still valid in today's reality in Germany at least (I guess in most of Europe). My dictionary gives both terms, trade and craft, for the German word, not sure what the differences are. It has also to do with guilds, or nowadays the IHK (Industrie- und Handwerkskammer = ~ chamber of industry and trades/crafts). It is mostly not about handy craft.

pnorman commented 10 years ago

craft=electrician, craft=roofer, craft=plumber, craft=hvac, and craft=painter are excellent examples of trades. The key is a muddle of trades, industrial (craft=agricultural_engines, craft=sawmill), and actual crafts (craft=handicraft). Trying to add a generic rendering for craft would be like trying to add a generic rendering for amenity, which includes prisons to ice cream stores.

dieterdreist commented 10 years ago

2014-06-22 23:33 GMT+02:00 Paul Norman notifications@github.com:

The key is a muddle of trades, industrial (craft=agricultural_engines, craft=sawmill), and actual crafts (craft=handicraft). Trying to add a generic rendering for craft would be like trying to add a generic rendering for amenity.

I agree that the description of craft in the wiki is poorly drafted, e.g. because it doesn't tell how to differentiate between industrial and craft, but aside from this it seems mostly a cultural / language problem. The term "trade" is commonly translated as de:"Handel" (buying and selling), which won't include any work like producing, repairing, etc.

The specific value craft=agricultural_engines was also emerging from talk-de [1] and as I understand it shouldn't be applied to industrial scale manufacturing instances of this (as industrial stuff gets tagged man_made=works), but rather to relatively small businesses which offer repair and maintenance of agricultural machinery (maybe a poorly designed value) and often also sell these. A business like this relates to the industry like a mechanic relates to a car manufacturer.

One of the reasons why "craft" was chosen as a key is also wikipedia I guess, because the German article "Handwerk" translates to the English "craft" [2] there, and the first sentence seems to fit more or less ("pastime" doesn't actually fit): "A craft is a pastime or a profession http://en.wikipedia.org/wiki/Profession that requires some particular kind of skilled work http://en.wikipedia.org/wiki/Skilled_worker. In a historical sense, particularly as pertinent to the Middle Ages http://en.wikipedia.org/wiki/Middle_Ages and earlier, the term is usually applied to people occupied in small-scale production of goods http://en.wikipedia.org/wiki/Good_%28economics%29, or their maintenance http://en.wikipedia.org/wiki/Maintenance,_repair,_and_operations, for example by tinkers http://en.wikipedia.org/wiki/Tinker. The traditional terms craftsman http://en.wikipedia.org/wiki/Craftsman%28disambiguation%29_ and craftswoman http://en.wikipedia.org/wiki/Craftswoman are nowadays often replaced by artisan http://en.wikipedia.org/wiki/Artisan and rarely by craftsperson ( craftspeople http://en.wikipedia.org/wiki/Craftspeople)."

only at the end of the article there is a reference to trade [3] which doesn't really explain the difference between a craft and a trade: "A tradesman is a skilled manual worker in a particular trade http://en.wikipedia.org/wiki/Trade_%28occupation%29 or craft. Economically and socially, a tradesman's status is considered between a laborer http://en.wikipedia.org/wiki/Laborer and a professional http://en.wikipedia.org/wiki/Professional, with a high degree of both practical and theoretical knowledge of their trade."

If the current term "craft" is not well chosen for what it is intended to describe we should re-discuss this on the [tagging]-ML, as this is a really important part of today's economic reality in central Europe.

[1] https://lists.openstreetmap.org/pipermail/talk-de/2010-November/079014.html or http://comments.gmane.org/gmane.comp.gis.openstreetmap.region.de/59615

[2] http://de.wikipedia.org/wiki/Handwerk -> http://en.wikipedia.org/wiki/Craft

[3] http://en.wikipedia.org/wiki/Craft#Tradesman

daganzdaanda commented 10 years ago

Is there a difference in US and UK usage of the words "craft" and "trade"?

Linguee.com is useful to find out how a term is used and translated on the web. Of course, it depends on the texts that are available, which may not always have been translated very well...

"Handwerker" is a craftsman (or plural craftsmen). http://www.linguee.com/english-german/search?source=auto&query=Handwerker

"Handwerk" is not clear: "craft" is used about 47% of the time, and "trade" about 35%. http://www.linguee.com/english-german/search?source=auto&query=Handwerk

But the other way around, "craft" is translated as "Handwerk" nearly 75% of the time, while "trade" is translated mostly as "Handel" (50%) and only infrequently as "Handwerk" (6%). "Handicraft" is 34% Handwerk and 25% "Kunsthandwerk" (i.e. more artisanal).

I get the feeling "craft" is OK to describe the German concept of Handwerk. Maybe "trade" would be more correct and sound better to a native speaker, but trade has more and stronger additional meanings which might confuse mappers. Also, changing the tagging now might not really be a good thing, as has been explained with the power=sub(_)station issue. (Or would it still be okay, since it isn't rendered on most maps yet?)

It's still true that some of the things tagged with craft=* probably should be tagged as something else.

AndiG88 commented 10 years ago

industrial (craft=agricultural_engines, craft=sawmill)

I agree that some tags don't seem to belong in craft at all, but I think the generall idea was to use craft for local traditional small scale production and man_made=works if it is industrial (e.g. brewery).

I guss a lot of stuff ends up in craft= simply because man_made=works is even worse defined. I mean how Am I supposed to tag a sawmill? man_made=works + product=wood? I think for this tag to be used more it need something like works=sawmill/chemical_plant/brewery/... and not just product=*.

daganzdaanda commented 10 years ago

These are the 60 most used amenity values that are not in the map style yet (Groups of 10):

bench 405 099
kindergarten 124 453
public_building 113 264
bicycle_parking 99 341
waste_basket 90 961
townhall 58 807
parking_space 55 866
swimming_pool 49 894
hunting_stand 49 868
vending_machine 47 722

fountain 46 669
doctors 37 908
social_facility 32 508
car_wash 28 509
marketplace 22 885
dentist 21 525
waste_disposal 19 918
community_centre 19 590
taxi 18 310
residential 15 833

fire_hydrant 13 787
veterinary 12 451
parking_entrance 10 367
nursing_home 10 329
courthouse 9 762
clinic 9 650
arts_centre 9 534
nightclub 9 259
bbq 8 883
ferry_terminal 8 844

grit_bin 7 430
car_rental 6 453
clock 5 622
driving_school 4 964
ice_cream 4 109
charging_station 3 291
bureau_de_change 2 756
boat_storage 2 400
sauna 2 084
shop 2 074

motorcycle_parking 1 905
food_court 1 893
shower 1 833
studio 1 785
watering_place 1 747
brothel 1 503
retirement_home 1 368
childcare 1 356
casino 1 261
gambling 1 054

garages 918
gym 881
social_centre 826
public_hall 802
payment_terminal 776
refugee_housing 694
compressed_air 635
youth_centre 630
water 621
building 619

I removed "yes" and "abandoned", hope I missed nothing worthwhile. It is a very mixed bunch!

matthijsmelissen commented 10 years ago

Thank you for the overview, very interesting.

What does amenity=residential mean?

This is also very related to #660. Instead of making decisions for the individual cases, I think it would be good to have some strategy on how to decide which map features to add.

daganzdaanda commented 10 years ago

Here the values that are in the code, with empty lines to show what's missing

parking 1 438 945 
place_of_worship    604 588
school  596 793
restaurant  409 238

fuel    227 583
post_box    162 239
grave_yard  157 106
bank    156 345
fast_food   150 905
cafe    148 339
recycling   125 719

hospital    116 763
pharmacy    116 475

post_office 108 357
pub 102 829

toilets 89 873
telephone   82 900
shelter 79 048
drinking_water  73 417
atm 73 067
police  68 198
fire_station    67 923
bar 64 523

library 47 537

university  38 200

college 27 566
bus_station 25 261

theatre 18 543

cinema  15 865

bicycle_rental  12 574

emergency_phone 7 302
biergarten  6 493

prison  5 423
embassy 5 110

car_sharing 4 706
daganzdaanda commented 10 years ago

What does amenity=residential mean?

I'm sure it is an error. Maybe something that happens when an old value is still in an editor, after tagging landuse or highway=residential. But many seem to be combined with buildings, so could be that this should say these are "residences"? Is there a way to find out if a specific editor is to blame? I used taginfo's overpass-query, and did not see any clear trend.

This is also very related to #660. Instead of making decisions for the individual cases, I think it would be good to have some strategy on how to decide which map features to add.

Yes indeed. amenity is a kind of catch-all, but some of the other tags are also not very uniform. Also, there is probably another, better tagging for many of the lesser used amenities, so we don't have to render bad tagging...

Maybe we could come up with groups of POIs that should be treated in a similar way (not just in key:amenity)

matthijsmelissen commented 10 years ago

I think the hardest ones are the government/social facilities.

We have public_building, townhall, social_facility, community_centre, nursing_home, retirement_home, refugee_housing, youth_centre, etc.

I think the name of these should be rendered on the map. But should they also get an icon? My gut feeling says that they would look better without icon, but I can't quite tell why. Also, would a text without icon look fine if these amenities don't take up a full building?

daganzdaanda commented 10 years ago

(social facilities) I think the name of these should be rendered on the map

Yeah, they do serve a public interest. Funnily, I had the same thought, that they don't need an icon! Maybe it's because the icons would not be easily recognizable or intuitive? How would an icon for a nursing_home look? So just a name would be fine. Maybe all these can get a new color for the text, or a typographic treatment like italics? I guess we would have to see a test to gauge how it looks if it is not taking the full building, sitting off-centre or at an entrance.

Also, social_facility has a lot of sub-tags to replace many of the other tags: http://wiki.openstreetmap.org/wiki/Social_facility Should we start rendering nursing_home, youth_centre etc, or should we favour the social_facility route, or both?

matthijsmelissen commented 10 years ago

See also https://trac.openstreetmap.org/ticket/4420 (veterinary), https://trac.openstreetmap.org/ticket/2199 (brothel), and https://trac.openstreetmap.org/ticket/4742 (motorcycle_parking).

matthijsmelissen commented 9 years ago

@nebulon42 Do you have any suggestion for a dentist icon? The SJJB icon @nebulon42 dentist is not that nice. I think a tooth would suffice.

kocio-pl commented 9 years ago

I also vote for the tooth icon with nothing else.

matthijsmelissen commented 9 years ago

I added the most used ones (>10000 occurrences) to the top of this post. For most of them, finding a suitable icon is the toughest task.

matthijsmelissen commented 9 years ago

I propose not to render amenity=fire_hydrant (too specialistic).

matkoniecz commented 9 years ago

Main problem with amenity=fire_hydrant is that displaying would make sense on z22 or z21. And that zoom levels currently are not used anywhere (AFAIK - it is also not going to change in near future).

matkoniecz commented 9 years ago

BTW, the same problem is with amenity=bench - though Humanitarian style displays benches on z19.

AnBuKu commented 9 years ago

Am 14.01.2015 um 08:25 schrieb Mateusz Konieczny:

Main problem with amenity=fire_hydrant is that displaying would make sense on z22 or z21. And that zoom levels currently are not used anywhere (AFAIK - it is not going to change in near future).

This is the only one I know with z21 http://www.osm.ch/#21

But, sure, emergency=fire_hydrant should not be rendered in the main map (even if I'm a fanboy of fire hydrants :-)

And, amenity=firehydrant should be avoided or existing ones changed towards emergency=fire_hydrant

https://taginfo.openstreetmap.org/tags/emergency=fire_hydrant -> 303 482

https://taginfo.openstreetmap.org/tags/amenity=fire_hydrant -> 12 274

— Reply to this email directly or view it on GitHub https://github.com/gravitystorm/openstreetmap-carto/issues/108#issuecomment-69878437.

Andreas Bürki

abuerki@anidor.com S/MIME certificate - SHA1 fingerprint: ED:A5:F3:60:70:8B:4C:16:44:18:96:AE:67:B9:CA:77:AE:DA:83:11 GnuPG - GPG fingerprint: 5DA7 5F48 25BD D2D7 E488 05DF 5A99 A321 7E42 0227

matkoniecz commented 9 years ago

I marked fire_hydrant as "(won't fix)".

nebulon42 commented 9 years ago

@math1985 I have a suggestion for dentist (https://github.com/nebulon42/osmic/blob/master/health/dentist-16.svg) and will open a PR.

matthijsmelissen commented 9 years ago

dentist and townhall have been added in the meanwhile.

matkoniecz commented 9 years ago

I updated the first post marking implemented features.

amenity=public_building should be rejected based on its wiki page - http://wiki.openstreetmap.org/wiki/Tag:amenity%3Dpublic_building

Short Answer: Don't.

kocio-pl commented 9 years ago

@matkoniecz nightclub is also already implemented and we have an open ticket for veterinary clinic.

I wish we start using Wiki for maintaining such big and long lasting lists of features...

matkoniecz commented 9 years ago

I would prefer individual tickets over collections like that - for example this ticket seems to offer absolutely no benefit over opening individual ones that may be handled separately.

kocio-pl commented 9 years ago

For me it does: you have a bunch of related issues together in one place if the problem is more general (like rendering important/popular objects other than just shop=*). Individual tickets are linked for individual cases related to this problem.

matthijsmelissen commented 9 years ago

I also like having the meta-tickets.

matkoniecz commented 9 years ago

I marked public_building as "won't fix" (as recommended by http://wiki.openstreetmap.org/wiki/Tag:amenity%3Dpublic_building).

kocio-pl commented 9 years ago

While I agree we don't want to show the icon for public_building, I think we may render it as a "major" building type (currently only PoW buildings).

matkoniecz commented 9 years ago

According to wiki it is a bad tagging scheme, therefore not deserving promotion by using it in rendering.

kocio-pl commented 9 years ago

Ok, right :smile: - it's just very popular, but building=public is the answer. I guess once we start displaying them as major, people will start migrating.

dieterdreist commented 9 years ago

sent from a phone

Am 29.07.2015 um 13:04 schrieb kocio-pl notifications@github.com:

but building=public is the answer

I'm pretty sure it isn't ("public" is a very rough building type, could be anything from an office tower to a library or..., it is similar to "residential", where a more refined distinction is detached house or apartments etc.)

kocio-pl commented 9 years ago

It's always better to be more specific if possible, but I guess major buildings are just different kinds of public buildings. However it needs some testing probably to know if it's not too wide.

tuxayo commented 9 years ago

I agree that it would be useful to distinguish public buildings.

After testing few capitals http://overpass-turbo.eu/s/aJL http://overpass-turbo.eu/s/aK3 http://overpass-turbo.eu/s/aJI http://overpass-turbo.eu/s/aK2 the density don't seem to pose visual cluttering problems.

kocio-pl commented 8 years ago

Community centre and veterinary clinic rendering is now merged.

matthijsmelissen commented 8 years ago

Updated

kocio-pl commented 8 years ago

car_wash is now merged too: https://github.com/gravitystorm/openstreetmap-carto/pull/1777.

matkoniecz commented 8 years ago

Updated, thanks.

matkoniecz commented 8 years ago

vending_machine

I think that in this case value of rendering it is rather low (though waste baskets are rendered) and rendering it in understandable way would be problematic.

kocio-pl commented 8 years ago

See https://github.com/gravitystorm/openstreetmap-carto/issues/1561#issuecomment-141659855.