UtilsPlugin2 is another collection of useful tools as follow up to UtilsPlugin now included in the JOSM program.
The functions are accessible via the More tools menu, Selection menu, and shortcuts.
- 1 More tools menu
- 1.1 Unglue relation (Shift+G)
- 1.2 Add nodes at intersections (Shift+I)
- 1.3 Split area (Alt+X)
- 1.4 Replace geometry (Ctrl+Shift+G)
- 1.5 Paste relations (Ctrl+Alt+V)
- 1.6 Add source tag (Ctrl+Alt+S)
- 1.7 Paste tags from previous selection (Shift+R)
- 1.8 Align way nodes (Shift+L)
- 1.9 Use custom URL (Shift+H)
- 2 Data menu
- 3 Selection menu
- 4 Installation
- 5 Links
Unglue relation (Shift+G)
From the original announcement on the JOSM-dev mail-list:
5563 - Unglue relation (by Kalle Lampila)
In a similar way that a single node is shared by two ways and you like to unglue it, there are sometimes two relations (e.g. multipolygon) that have the same object as member (e.g., the boundary way). This tool creates a private copy for each parent relation. (So in the example, the two multipolygon areas can be separated.)
Adds nodes at the intersections of two or more ways (linear or closed). Selected ways will not be split.
Splits a closed way/area into two closed ways/areas at two selected points or selected way. Properties of the original area are copied to the two new areas. Either select the closed way/area and two child nodes, or select the closed way/area and one way bisecting it.
Replace geometry (Ctrl+Shift+G)
Substitutes the geometry of one object for another retaining as much metadata and history as possible. There are currently two supported modes:
Replace one way with another way
In some cases it may be faster or more convenient to draw a new way rather than adjust the existing one, but you want to retain the history. Some or all nodes of the old way are moved to positions of the new ones, and some nodes are transferred between ways. Then the new way is deleted, having played its role. This is done to preserve way and node history as much as possible. For example:
- Choose a poorly drawn way in OSM database that you want to fix.
- Draw a new way, neat and correct, with all the correct angles.
- Select both ways.
- Use Replace geometry action. This transfers tags & history of the old way to the new way and as much as possible re-uses the nodes of the old way.
- After uploading to OSM, it will appear as if the old object was simply adjusted a bit, rather than entirely replaced.
Replace a node with a way
Sometimes you may encounter a node for a feature, like a restaurant, but you have imagery with sufficient detail that you can trace the building outline. Or perhaps you've encountered a situation where the same feature is represented with both a node and a way, violating the principle of One feature, one OSM element. In either case, select the node and the way, and the Replace Geometry action will replace (upgrade) the node with the way, retaining as much history as is possible.
Note that any combination of uploaded/new node and way is accepted. The node is always replaced in favor of the way.
Paste relations (Ctrl+Alt+V)
Similarly to Paste tags, the selected objects are added into relations that contain any of the objects in the clipboard, with appropriate roles if they can be determined.
Add source tag (Ctrl+Alt+S)
Simplifies setting source=* for new objects. It remembers which source was specified last, and pastes it with just one click. It is not needed to enter new source tag value for the action to remember: you may click twice on any object with needed tag value.
Similar to R button in Potlatch. The tags from the previously selected object are added to the current selection. So, to copy tags from one way to another, you don't need to copy then paste; just select source way, then the target way, then invoke this tool. When you change the tags of an object and select another object, Shift+R will paste the tags of the modified object.
Align way nodes (Shift+L)
Similar to Align nodes in line, but uses a parent way as context. The behaviour depends on the current selection:
- one node: node will be aligned in a line with the two adjacent nodes in the parent way.
- two nodes: intermediate nodes in the parent way will be aligned in a line with the two nodes.
- three or more nodes: all nodes will be aligned in line.
Use custom URL (Shift+H)
Open URL in default browser with data from selected node or location of center of the screen. Add settings to preferences/utilsplugin2-tab or customurls.txt in JOSM folder.
- Google Maps:
- National Land Survey service in Finland:
- Pic4Carto (street-level pictures):
- OSM History Viewer
Tag multiple objects (alpha) (Ctrl+T)
Spreadsheet like editing of tags (cons: tags are untranslated)
Allows to choose which keys are displayed and search for all items which have values for those keys and edit their tags.
Select adjacent nodes (E)
Adds immediately adjacent (by connection via ways) nodes of currently selected nodes to selection.
- If the current selection also contains ways, then only connections via these ways is considered.
- If the current selection contains only ways, the selection is replaced with the nodes of these ways.
Example of usage: select one node (and possibly its way), press E (three nodes are selected now), press L to put the node on straight line.
Select adjacent ways (Shift+E)
Selects immediately adjacent ways of currently selected ways or nodes.
Select all connected ways (Crtl+Shift+E)
Selects all ways connected (possibly via intermediate ways) to the current selection.
Select intersecting ways (I)
Adds intersecting ways the current selection. Useful with Add nodes at intersections.
Select all intersecting ways (Ctrl+NumPad *)
If some ways are selected, selects all adjacent and intersecting ways recursively. Useful for selecting parts of the building to join.
Installation is done via JOSM preference as described in JOSM/Plugins, section installation.
- UtilsPlugin2 page at JOSM wiki
- http://email@example.com/msg03928.html The announcement in the JOSM-dev mail-list.
- https://trac.openstreetmap.org/changeset/24236/applications/editors/josm The changeset introducing the utilsplugin2.