A tool to help power pole mapping

I sometimes map power lines using iD. Often, all of the nodes of my power lines are power poles.

I sometimes mark all nodes of a way as something using Level0, which I love. (I know I could use JOSM as well, but I am not keen on using JOSM for various subjective reasons.)

Today I made a specialised website which I hope will make my life even easier than Level0 does: Mark all nodes as. (Source code here.) Logged in users are asked to give a way ID, and after clicking Submit, all nodes within the way will be marked as power=pole. If this tool indeed proves to be useful for my mapping, I’ll consider expanding it to power=towers.

I don’t wanna publish an MR-like tool enabling large scale damage for a wide audience so all users using it must be whitelisted. If you wanna use it, let me know, I would be happy to whitelist any careful mapper! If you need something similar, but not exactly this, I hope you find the source code useful. If you need help setting your page up, I’m happy to help.

If you have concerns with this, I’m happy to hear them too.

3 Likes

Great to see task-oriented editors like this cropping up! For what it’s worth, I’ve been using the following workaround in iD:

  1. Select a power=line or power=minor_line way.
  2. Press Ctrl↓ (āŒ˜ā†“ on macOS) to select all of the way’s nodes. You can use the list at the top of the sidebar to selectively remove any nodes you don’t want to modify.
  3. Choose the Power Pole or High-Voltage Tower preset. If some of the selected nodes are already tagged as power=pole or power=tower, click Multiple Types and change it to the right preset, or expand the Tags section at the bottom and click on Multiple Values next to power to apply the same tag to all the selected nodes.

You can do this repeatedly to the same way, but be careful about accidentally changing a power=tower to a power=pole at the location where a power=minor_line connects to a power=line.

Even if you end up using this workaround, I hope you continue to explore editor development. There’s so much untapped potential for making tedious tasks more pleasant.

9 Likes

Awesome trick, thank you @Minh_Nguyen! Great to see how simple yet powerful iD really is. I tried your suggestion now, it worked!

5 Likes

power=towers is over, I killed the last 6 items yesterday :smiling_imp:, but power=tower remains of course

More seriously : you must not apply this to first and last node of the line. Junction with other component is probably not a tower but a power=insulator or a power=portal (at least for power=line I’m working on it, you might be interested by the project : Introducing the Oh-my-Grid! Initiative )

I would also suggest to have a feedback of the tools before applying any change (something like : ā€œThis line contains X nodes, X of them are power pole, first node is Z, last node is Y. First and last node will be ignored. Are you sure you want to process all other node as power pole ?ā€)

5 Likes

Even as a first pass when mapping a line for the first time? Usually all I have at my disposal is aerial imagery, or if I’m lucky, low-resolution Bing Streetside imagery. I often end up connecting a power=minor_line to another power=minor_line or power=line at a pole or tower, and it can be unclear which is which. I’ve also encountered a number of power=minor_lines that terminate with a power=pole where, for all I know, the line goes underground, or with a tagless node where it attaches to a house, or with something else like an emergency=siren (my original reason for micromapping minor lines). Is there an additional level of detail I need to be including?

3 Likes

I think this:

you must not apply this to first and last node of the line

is mostly relevant when the entire line is mapped, and the ā€œend of the lineā€ really means the end of the line, not end of the way in OSM.

I tried to get an idea how often ways don’t end in power=poles when it comes to power=minor_lines. So I picked a country where neither @Minh_Nguyen nor I have mapped in yet (Slovenia), run this overpass query, and tried to pick 10 ways randomly. Here are the results of how they end.

Way 1344503481:
power=transition, node without tags.
Way 641361461:
power=pole, power=pole (also line_management=termination)
Way 907354816:
power=pole, power=pole
Way 1331703336:
power=pole (also: line_management= transition), power=pole (which is part of another way)
Way 1331701116:
power=pole, power=tower (also line_management=termination)
Way 957866444:
power=pole, power=pole (which is part of another way)
Way 1037320277:
power=pole, power=pole
Way 919859993:
power=pole, power=pole (which is part of another way)
Way 720864509:
power=pole, power=pole (which is part of another way)
Way 1132076496:
power=pole, power=pole

So based on this, I think it’s clear that the actual tag usage on power=minor_lines does not follow your advice @ben10dynartio: many power=minor_line ways end in power=poles.

Zooming out from Slovenia: globally, roughly 58% of line_management=termination are on a power=pole, while 30% on power=tower (source: taginfo).

I shall read the Clarifying power=pole vs power=tower thread you posted @Minh_Nguyen, I know it’s often not at all clear-cut, I hope it’ll clear it up. Whether I should tag something as a minor_line or a line is also not always clear to me.

Personally I think if you’re mapping a new line, it doesn’t have to be perfect. But if you’re extending/connecting to something which is already well-mapped, you should avoid breaking that.

2 Likes

Good idea. I think I’m not gonna develop this exact tool further, as the iD suggestion from @Minh_Nguyen works marvellously. I will likely to make something similar in the future, then I’ll try to have this confirmation in it.

Well, 2 out of 10 is according to me sufficient to be careful, and to avoid too-automated task.

But as @Minh_Nguyen ask : "Even as a first pass when mapping a line for the first time? "

If you know what you are doing, or as a first iteration all is fine :slight_smile: My comment was more in the case of tools generalisation, and when connecting line to others thinks that you haven’t created (other lines mainly). Thus we should warn user somehow, because even if the end-tags are mostly pole, the few exceptions should not be removed !

2 Likes