Modify

Opened 6 years ago

Closed 4 years ago

Last modified 4 years ago

#16898 closed enhancement (fixed)

[Patch] Add man_made=communications_tower

Reported by: gaben Owned by: team
Priority: normal Milestone: 20.06
Component: Internal preset Version: latest
Keywords: tower communication Cc: Klumbumbus

Description

It's de facto according to OSM wiki and recently got its own rendering icon on osm-carto.

Also, a validator heuristic can be used if something tagged with:

  • man_made=tower
  • material=concrete
  • and higher than 100m

it possibly would be a communications_tower instead of tower.

Attachments (5)

josm_16898_tower_example.osm (99.6 KB ) - added by skyper 5 years ago.
tower with height 100 or higher and material=concrete
josm_16898.patch (1.7 KB ) - added by skyper 5 years ago.
validator part
josm_16898_v2.patch (1.8 KB ) - added by skyper 5 years ago.
include decimal numbers and m as unit
josm_16898_v3.patch (3.5 KB ) - added by skyper 5 years ago.
validator patch including values in feet
josm_16898_v4.patch (2.0 KB ) - added by skyper 4 years ago.
version 4 only warning about communications_tower < 75m

Download all attachments as: .zip

Change History (27)

comment:1 by Don-vip, 6 years ago

Keywords: tower added

see #8076

comment:2 by skyper, 5 years ago

Keywords: communication added
Owner: changed from team to skyper

Presets/MastAndTower supports the tags

comment:3 by skyper, 5 years ago

See #17818 for the preset part.

in reply to:  description ; comment:4 by skyper, 5 years ago

Replying to anonymous:

Also, a validator heuristic can be used if something tagged with:

  • man_made=tower
  • material=concrete
  • and higher than 100m

it possibly would be a communications_tower instead of tower.

I find many false positive with this search request even with tower:type=*communication*. Most of them a correctly tagged man_made=tower as wikipedia shows.

[out:xml][timeout:300];
(
  nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["tower:type"~"communication"];
);
(._;>;);
out meta;

and filter (type:node ways:1-) OR (type:way parent (type:relation)) (filter is broken, so the second part does not work and ways with membership are not filtered.
Edit: (type:node ways:1-) OR (type:way child (type:relation))

The opposite is definitely more interesting:

[out:xml][timeout:300];
(
  nwr["height"~"^[1-9][0-9]$"]["man_made"="communications_tower"];
);
(._;>;);
out meta;


finds communications_tower as small as ten meters and all eight tagged wikipedia pages clearly show that these eight are man_made=tower.

Last edited 5 years ago by skyper (previous) (diff)

in reply to:  4 comment:5 by skyper, 5 years ago

Replying to skyper:


and filter (type:node ways:1-) OR (type:way parent (type:relation)) (filter is broken, so the second part does not work and ways with membership are not filtered).

Sorry, wrong search. Should be (type:node ways:1-) OR (type:way child (type:relation)).

in reply to:  4 ; comment:6 by gaben, 5 years ago

You missed the material=concrete part. Just checked, it affects 24 objects globally. I consider the heuristic addition a nice to have, but not important.

BTW it was reported by me originally :)

Last edited 5 years ago by gaben (previous) (diff)

in reply to:  6 ; comment:7 by skyper, 5 years ago

Replying to gaben:

You missed the material=concrete part. Just checked, it affects 24 objects globally. I consider the heuristic addition a nice to have, but not important.

Yes, I missed tower:type=communication and material=concrete. material=concrete will miss some objects without material tagged.
Strange, I only find 16 objects (Rel: 1 / Ways: 11 / Nodes: 4). Not sure if this check is needed.

Still, I find 202 objects (Ways: 110 / Nodes: 92) with height between 11 and 99 tagged as man_made=communications_tower. So, in my eyes, this check would make more sense.

BTW it was reported by me originally :)

Sorry, cannot adjust the reporter.

in reply to:  7 ; comment:8 by gaben, 5 years ago

Replying to skyper:

Strange, I only find 16 objects (Rel: 1 / Ways: 11 / Nodes: 4).

I used your modified query:
nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["material"="concrete"];

For easiness https://overpass-turbo.eu/s/T03

Still, I find 202 objects (Ways: 110 / Nodes: 92) with height between 11 and 99 tagged as man_made=communications_tower. So, in my eyes, this check would make more sense.

Yeah, this is probably a better approach.

Sorry, cannot adjust the reporter.

No problem, wrote it here just for the record.

comment:9 by Klumbumbus, 5 years ago

Reporter: changed from anonymous to gaben

in reply to:  8 ; comment:10 by skyper, 5 years ago

Replying to gaben:

Replying to skyper:

Strange, I only find 16 objects (Rel: 1 / Ways: 11 / Nodes: 4).

I used your modified query:
nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["material"="concrete"];

Ok, you'll find some tower:type=cooling with this query. Try:
nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["material"="concrete"]["tower:type"="communication"];

in reply to:  10 comment:11 by gaben, 5 years ago

Replying to skyper:

Ok, you'll find some tower:type=cooling with this query. Try:
nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["material"="concrete"]["tower:type"="communication"];

I haven't found a single one, can you please give at least one OSM id?

by skyper, 5 years ago

tower with height 100 or higher and material=concrete

comment:12 by skyper, 5 years ago

This is the result of nwr["height"~"^[1-9][0-9][0-9]"]["man_made"="tower"]["material"="concrete"];:
josm_16898_tower_example.osm​

comment:13 by skyper, 5 years ago

How about adding validator tests for:

  • man_made=tower without tower:type: Suggesting to add tower:type
  • man_made=tower, tower:type=communication, material=concrete and height over 99 meters: Suggesting to use man_made=communications_tower
  • man_made=communications_tower and height below 100 meters: Suggesting to use man_made=tower and tower:type=communication

Only problem, I see, is that you might get a second warning after adding tower:type=communication to a man_made=tower, material=concrete and height over 99 meters.

by skyper, 5 years ago

Attachment: josm_16898.patch added

validator part

comment:14 by skyper, 5 years ago

Owner: changed from skyper to team
Summary: Add man_made=communications_tower[Patch] Add man_made=communications_tower

I made a patch for the validator part, see josm_16898.patch. The preset part is covered in #17818.

by skyper, 5 years ago

Attachment: josm_16898_v2.patch added

include decimal numbers and m as unit

comment:15 by skyper, 5 years ago

josm_16898_v2.patch​ includes possible decimal numbers and m as unit for height
Not covered, yet, are feet and inches.

by skyper, 5 years ago

Attachment: josm_16898_v3.patch added

validator patch including values in feet

in reply to:  13 ; comment:16 by skyper, 5 years ago

Find final validator patch: josm_16898_v3.patch
adds warnings for:

  • man_made=tower without tower:type
  • man_made=tower, tower:type=communication, material=concrete and height 100 m or above, respectively 328 ft
  • man_made=communications_tower and height below 100 m, respectively 328 ft

comment:17 by simon04, 5 years ago

Cc: Klumbumbus added
Milestone: 20.06

in reply to:  16 comment:18 by Klumbumbus, 4 years ago

Replying to skyper:

  • man_made=tower, tower:type=communication, material=concrete and height 100 m or above, respectively 328 ft
  • man_made=communications_tower and height below 100 m, respectively 328 ft

There is no strict rule in the wiki that towers >100m must be communication_towers and <100m towers.
"It is often made from concrete and usually a far visible landmark. An indication could be a height greater than 100 meters. "

I would not warn about values around 100m. For the only 25 towers >100m a rule is anyway not really needed. The other way round, communication towers < ≈75m a warning would be useful imo.

by skyper, 4 years ago

Attachment: josm_16898_v4.patch added

version 4 only warning about communications_tower < 75m

comment:19 by skyper, 4 years ago

Version 4 includes only the warning about communications_tower below 75m.

comment:20 by Klumbumbus, 4 years ago

Resolution: fixed
Status: newclosed

In 16705/josm:

fix #16898 - Warn about man_made=tower without tower:type and man_made=communications_tower with height<75m (patch by skyper, modified)

comment:21 by Klumbumbus, 4 years ago

Thanks for the patch.

comment:22 by Klumbumbus, 4 years ago

In 16706/josm:

see #10759, see #17818, see #16898 - Add Presets for man_made=mast and man_made=communications_tower, rework preset for man_made=tower, based on patch by skyper, (all icons from https://wiki.openstreetmap.org/, from Geozeisig, all PD and CC0 licensed)

Modify Ticket

Change Properties
Set your email in Preferences
Action
as closed The owner will remain team.
as The resolution will be set.
The resolution will be deleted. Next status will be 'reopened'.

Add Comment


E-mail address and name can be saved in the Preferences .
 
Note: See TracTickets for help on using tickets.