Skip to content

Becoming a power mapper

Natasha96-Zhouner edited this page Jun 17, 2024 · 31 revisions

title: Reviewing your edits

JOSM Validator

The easiest way to fix common mapping issues is to use the inbuilt validator in JOSM. All edits made in a session are automatically validated and a warning will be displayed before upload if any suspicious data is found.

screenshot 2015-12-11 14 30 37

Usage

  • Select the data you want validated and press Shift+V or hit Validate from the Validator panel. If no data is selected, the Validator will run on all the data in the active layer.
  • A Validation errors layer will be added to your Layers to highlight features with errors.
  • The Validation Results panel will display all the detected errors. Select any of the detected errors to fix. You can right click an entry and zoom to the location if needed.

32916b6b-764c-4893-8ec7-52e2a1fc484e

The Validation Results have several buttons activated to navigate and fix errors:

  • Select – Select the objects of the selected error.
  • Lookup – Looks up the selected primitives in the error list.
  • Validation – Start validation process for current selection or all objects (when nothing selected).
  • Fix – Fix an error (only when automatically fixable).
  • Ignore – Ignore an error or a group of errors in future tests.

Customizing error detection

By default the validator checks against a wide range of data issues, many of which may not be important or may contain false positives. You can customize the settings from Preferences > Data Validator

e5305f8c-3843-425f-9601-5ad422a5b215

For more details check the OSM Wiki and the LearnOSM Guide

Overpass Turbo

You can quickly query and visualize OSM data live using Overpass Turbo.

screenshot 2015-12-11 16 14 31

Usage

  • Browse the map to the area of interest or alternatively set a bounding box using the map tool on the left.
  • Write an Overpass Query in the query editor or use the Wizard for simple tag queries like highway=motorway or highway=trunk
  • Optionally add a MapCSS style to visualize the results
  • Hit Run to execute the query on the OSM data and display the results. Tip: By default small ways are rendered as circles. To fix this check the Don't display small features as POIs option from Settings > Map

For more details check the OSM Wiki, Learn Overpass or some common example queries.


title: JOSM shortcuts

As you draw using the JOSM editor, or correct map errors on to-fix, keyboard shortcuts can save help you save a great deal of time and increase the quality of your mapping [strokes replaced] if used correctly. Here we'll cover keyboard shortcuts on JOSM - default settings, how you can customize these to suit your preferences, and shortcuts most popular with the data team.

Use the JOSM cheatsheet by user:baditaflorin

Basic Shortcuts [Default]

By default, the JOSM editor comes pre-loaded with approximately 100+ shortcuts which cover everything from downloading/uploading map data from the OpenStreetMap server, adding/editing/deleting tags, validating results, and working with nodes, ways, and polygons. See the Common Keyboard Shortcuts on the JOSM wiki for more details.

image

Under Tools on the menu bar, you can see some of the basic default shortcuts on JOSM

The default shortcuts on JOSM are a great way to get started, but once you are familiar and start speed mapping, you may want to consider customizing the JOSM shortcuts to fit your mapping preferences. For example, you can customize shortcuts to allow you to map quickly without having to take your right hand off the mouse.

Action Keyboard Shortcut
Uploading the edit </kbd><!---->
Downloading data Q
Deleting data D

To access the Shortcuts Menu, go to Preferences on the JOSM menu bar. Within Preferences, click Options on the left (seventh button).

configure_image_shortcuts

Here is a comprehensive categorized list of shortcuts everyone should be familiar with.

JOSM Shortcuts

DATA

ACTION DESCRIPTION Mac Win/Linux
OPEN open a file Cmd+O
SAVE save current data Cmd+S
DATA DOWNLOAD download map data from OSM server Cmd+Shift+Down
DATA UPLOAD upload all changes in the active data layer to the OSM server Cmd+Shift+Up

Basic map editing

ACTION DESCRIPTION Mac Win/Linux
SELECTION select, move, scale, and rotate objects S S
NODES draw nodes A A
BUILDINGS draw building B B
DRAW fast drawing mode Shift + F
ZOOM zoom and move map Z Z
DELETE delete nodes or ways Cmd + D
SPLIT WAY split a way at a selected node P P
COMBINE WAY combine several ways into one C C
REVERSE WAY reverse the direction of all selected ways R R
SIMPLIFY WAY delete unnecessary nodes from a way Shift+Y
ALIGN NODES IN CIRCLE move the selected nodes into a circle O O
ALIGN NODES IN LINE move the selected nodes into a line L L
MIRROR mirror selected nodes and ways Shift+M
FOLLOW LINE continues drawing a line that shares nodes with another line F F
ADD NODE add a node by adding latitude/longitude or easting/northing Shift+D
CREATE CIRCLE create a circle from three selected nodes Shift+O
MERGE NODES merge nodes into the oldest one M M
JOIN NODE TO WAY include a node into the nearest way segment J J
MOVE NODE INTO WAY move node into the nearest way segments and include it N N
DISCONNECT NODE FROM WAY disconnect nodes from a way they currently belong to Alt+J
UNGLUE WAYS duplicate nodes that are used by multiple ways G G
JOIN OVERLAPPING AREAS join areas that overlap each other Shift+J
CREATE MULTIPOLYGON create a multipolygon Cmd + B
UPDATE MULTIPOLYGON update a multipolygon Cmd+Shift+B

Accuracy & precision

ACTION DESCRIPTION SHORTCUT
PARALLEL WAYS make parallel copies of ways Shift+P
WAY ACCURACY improve the accuracy of ways W
ORTHOGONALIZE SHAPE move nodes so all angles are 90 or 180 degrees Q
DISTRIBUTE NODES distribute the selected nodes to equal distances along a line Shift+B
EXTRUSION create areas X
BUILDING SIZE set building size Cmd+Alt+B

Presets

ACTION DESCRIPTION SHORTCUT
SEARCH PRESETS show preset search dialogue F3

User interface

ACTION DESCRIPTION SHORTCUT
PREFERENCES open a preferences dialogue for global settings Cmd + ,
LAYERS WINDOW open a list of all loaded layers Alt+Shift+L
TAGS/MEMBERSHP WINDOW open tags window for selected objects Alt+Shift+P
SELECTION WINDOW open a selection list window Alt+Shift+T
RELATIONS WINDOW open a list of all relations Alt+Shift+R
WIREFRAME VIEW enable/disable rendering the map as wireframe only Cmd+W

Imagery

ACTION DESCRIPTION SHORTCUT
IMAGERY OFFSET download offset for current imagery from a server Cmd+Alt+I

Conflicts resolution

ACTION DESCRIPTION SHORTCUT
CHECK AUTHOR open list of people working on a selected object Alt+Shift+A
RESOLVE CONFLICT resolve a conflict Alt+Shift+C

Review/validation

ACTION DESCRIPTION SHORTCUT
CHANGESET MANAGER toggle visibility of changeset manager window Cmd+Alt+C
VALIDATION WINDOW open validation window Alt+Shift+V
VALIDATE performs data validation Shift+V
FILTERS filter objects and hide/disable them Alt+Shift+F
HISTORY JOSM check history of an object Ctrl+H
HISTORY WEB check the history of object on web Cmd+Shift+H

title: Saving and loading a JOSM session

It is possible to save a JOSM session similar most GIS software (in QGIS we call it a project file). The JOSM session saves your current map view, OSM data and loaded layers such as imagery.

The JOSM session is available in File menu. You need to be in Expert mode to access this feature.
To activate Expert mode, go to JOSM Preferences, activate Expert mode by clicking the checkbox.

Saving a JOSM session

Load any of your preferred layers in JOSM.
Save the JOSM session file clicking, File > Session > Save session as ... Select any layers you want loaded when you start a new JOSM session.

05a32bc1-3d98-4d3d-9306-8376122cfcfa

Loading a JOSM session

To load a previously saved JOSM session, click File > Session > Load session. Select the .jos you saved.

e287b813-7004-4f41-807c-4523c1afcf4c

NOTE: Do not save any OSM data within your .jos file. Always load new data to avoid data conflicts.

Examples of session files we use in the /mapping repo.


title: Reverting changes


title: Advanced JOSM customization

Hidden settings in JOSM can be configured directly from the advanced preferences panel. This also gives you access to export and import your configuration profiles.

The panel is hidden by default and is shown as the last option when Expert mode is enabled.

screenshot 2015-10-15 14 42 52

Note JOSM will need to be restarted for any changes to take effect.


title: Advanced mapping guide

Roads

Neighborhood grid

Residential buildings are usually located on a residential or living_street and has access to a road only on one side, and optionally on the backside via a service alleyway. A building with residential roads on multiple sides is a sign of mistaking building shadows for streets. The street grid in an an area will have repeating patterns that make it easy to guess how the roads are laid even if they are obscured by trees. untitled

Using Fast draw plugin

  • Install and use Fast draw plugin (shift + F).
  • Press down arrow to simplify way, up arrow to add more complexity and then Enter.
  • Q to simplify straight segments of roads.
  • Shortcuts to tag each type of road classification Preferences > Customize the icons in the toolbar > Presets > highways/ features that require shortcut > highways/streets > select the road you want to add as shortcut > right click on the shortcut and add a shortcut.

Video Faster draw in JOSM

Buildings

  • Parallel buildings can be traced using the building tools plugin (B). Select a building and using the tool align subsequent buildings to the first one in one step. untitled

  • You can use the Area extrude tool (x), to quickly add details to the outlines by creating new nodes (double click) and then dragging the faces. untitled

  • Compound buildings To combine overlapping buildings, select both building and click Join overlapping Areas (Shift + J). For several intersecting buildings, use I > Shift+J. Or, use the Auto Tools > Combine LA buildings.

untitled

  • In Extrusion mode (X), do Ctrl + Cmd to redraw/reshape buildings for irregularly shaped buildings.

x-ctrl cmd

  • In Extrusion mode (X), add four nodes in a segment, hold the Ctrl + Cmd key, and drag the middle segment to create pyramidal extrusions.

pyramidal buildings

  • Double tap A to draw buildings with irregular sized extrusions. Or create several smaller buildings

double tap a

  • For buildings sharing the same wall, draw buildings (B) and, select intersecting node and click Join Node to a Way (J) or Move Node unto Way (N).

join j

  • To split a single building into two, select two nodes and select Split Object (Alt + X)

alt x_split_buildings1

  • Use Terracer plugin for multiple same shaped buildings sharing the same wall (Shift + T)

terrace

  • For circular features, draw the diameter, select the way, and click Tools > Create Circle (Shift + O).

  • Use Resize tool (Ctrl + Alt) to re-size shape.

Videos

Others

Individual parking spaces

Draw a box enclosing the parking spaces and use the terracer plugin to create a grid. Replace the default building=yes tag with amenity=parking_space. If you created adjacent grids, you would want to use the validator to automatically merge the overlapping nodes. untitled

Tagging driveway through a building

screen shot 2015-05-28 at 12 40 31 pm

Relevant tagging option for building would be

building=roof and layer=1

Highway road under the roof tagging options

covered=yes
highway=footway
highway=residential
highway=service

Tagging stadium tracks

image

Relevant tagging option for Stadium would be

  • trace centerline of track as line (leisure=track;area=no)
  • connect centerlines with surrounding foot paths or streets where possible

title: Fixing common mapping issues

Identifying common mistakes made by mappers for road network and knowing how to fix them is important to improve the quality of the map. If you spot mistakes which needs major fixing, send a friendly message on the users' changeset on what is wrong and how it could be fixed. You can use this guide as a reference while fixing data errors in JOSM.

Highway errors

Issue Whats wrong How to fix it Tips
Overlapping ways A highway which run over itself or another way with the exact same road classification. (Note the arrows on the selected way) Run validator shift+V —> Among validator errors/warnings select Overlapping ways —> Delete the overlapping way, make sure there are no gaps or missing pieces left behind.
Untagged Ways untagged Ways with no tags associated with the geometry Run validator shift+V —> Among validator errors/warnings select Untagged ways —> Select individual ways and add appropriate highway tags Refer OpenStreetMap wiki on highway tagging schema
Crossing ways crossing_way1 The ways (with highway/railway/waterway tags) that crosses in same layer with no crossing/intersecting node Run validator shift+V —> Among validator errors/warnings select Crossing ways —> shift+I to add the intersecting node Install utilsplugin2 to get advanced intersection modeling features. Refer to this guide for JOSM shortcuts.
Self-intersecting ways  A highway which intersects itself, possibly sharing same nodes at intersection. Run validator shift+V —> Among validator errors/warnings select Self-intersecting way —> Split using shortcut (P) at the intersection (common node) and delete the segment which is intersecting the highway
Way end node near other highway way end A highway node which ends near to other highways but dont connect each other. Run validator shift+V —> Among validator errors/warnings select Way end node near other highway —> Select individual node and press shift+J to form the connection.
Add layer=1 for bridges bridgefilterIf there is a lot bridges without layer=1 tag, you can filter bridges easily. Go to every bridge and look into imagery for it's layers (layer=1, layer=2 etc) and add OSM Wiki on bridge
Add junction=roundabout junction Add junction=roundabout for circle OSM Wiki for roundabout
Possibility to improve alignment improvement Use W to align the lines/polygons to the imagery

Non-Highway errors

image image


title: Useful Overpass queries

Newer than a given date

{% raw %}
[out:xml][timeout:600];
(
  way["highway"](newer:"2015-05-30T07:00:00Z")({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Changes in a given time period

{% raw %}
[out:xml][timeout:600];
(
  way["highway"](changed:"2015-05-14T07:00:00Z","2015-05-30T07:01:00Z")({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Provide two dates and generate a difference between the two

{% raw %}
[diff: "2015-06-30T15:00:00Z","2015-09-21T15:00:00Z"][out:xml][timeout:25];
(
  way["highway"]({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Extract edits of a user

{% raw %}
[out:json][timeout:25];
(
  node(user:"ramyaragupathy")({{bbox}});
  way(user:"ramyaragupathy")({{bbox}});
  relation(user:"ramyaragupathy")({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Extract a particular tag

{% raw %}
[out:json][timeout:25];
(
  node["amenity"="hospital"]({{bbox}});
  way["amenity"="hospital"]({{bbox}});
  relation["amenity"="hospital"]({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Extract all amenities

{% raw %}
[out:json][timeout:25];
(
  node["amenity"]({{bbox}});
  way["amenity"]({{bbox}});
  relation["amenity"]({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Find a particular tag without someother key value

{% raw %}
[out:json][timeout:25];
(
  node["highway"="footway"]["footway"!~"."]({{bbox}});
  way["highway"="footway"]["footway"!~"."]({{bbox}});
  relation["highway"="footway"]["footway"!~"."]({{bbox}});
);
out body;
>;
out skel qt;
{% endraw %}

Query within query

{% raw %}
[out:json][timeout:250];
(
  (
    way({{bbox}})[highway='primary'];
    relation({{bbox}})[highway='primary'];
  )->.a;
  node.a[name='Sand Hill Road'];
);
out body;
>;
out skel qt;
{% endraw %}

Search for a tag in an area

{% raw %}
[out:json][timeout:250];
(
  area[name="Palo Alto"];
  way(area)["building"];
  relation(area)["building"];
);
out body;
>;
out skel qt;
{% endraw %}

title: Useful OSM resources

The OSM ecosystem has an array of tools that you can use to extract, modify, visualize data, and contribute to!

Mapping

Survey tools

Tasking Tools

Data

Visualization

Extracts

QA and Activity Tracking

For full list check the OSM Wiki

Community

Contribute

Guides and FAQ

Clone this wiki locally