Key:roof:shape

From OpenStreetMap Wiki
Jump to navigation Jump to search
Public-images-osm logo.svg roof:shape
Marienkapelle und Wohnhaus (Schafhausermühle).jpg
Description
Roof shape type Show/edit corresponding data item.
Group: buildings
Used on these elements
may be used on nodesshould not be used on waysmay be used on areas (and multipolygon relations)should not be used on relations (except multipolygon relations)
Documented values: 25
Requires
Useful combination
Status: de facto

The key roof:shape=* is used to describe the shape of a building's roof, or the shape of the roof of a building part.

Tagging

OOjs UI icon reference.svg Related page : Simple 3D buildings, for more tags used to describe the shape and appearance of buildings.

Area

Common values

Roof shape

You can characterize the roof shape of a building using a catalogue of well-known roof types.

Image Roof Flat.png Roof Gabled.png Roof Gabled Height Moved.png Roof Skillion.png
roof:shape flat gabled gabled_height_moved skillion
Image Roof Hipped.png Roof Half Hipped.png Roof Side Hipped.png Roof Side Half Hipped.png
roof:shape hipped half-hipped side_hipped side_half-hipped
Image Roof Hip and Gable.png Roof Mansard.png Roof Gambrel.png
roof:shape hipped-and-gabled mansard gambrel
Image Roof Pyramidal.png Roof Crosspitched.png Roof Sawtooth.png Roof Butterfly.png
roof:shape pyramidal crosspitched sawtooth butterfly
Image Roof Cone.png Roof Dome.png Roof Onion.png Roof Round.png
roof:shape cone dome onion round
Other common values
Value Comment
many Marks that building has multiple different roof shapes at once. It is discouraged to use it because it is useless for rendering (roofs with this value are rendered as flat). Instead, use building:part=* carrying own roof:shape values. History described in detail in roof:shape=many.

Other roof tags

Key Comment
roof:height=* Height of the roof, from the top of the facades to the top of the roof.

See the section below for a good understanding of this tag and the usage of height, building:levels and roof:levels.

roof:levels=* Number of specific floors within the roof only.

See the section below for a good understanding of this tag and the usage of height, roof:height and building:levels.

roof:angle=* Alternatively to roof:height=*, roof height can be indicated implicitly by providing the inclination of the sides (in degrees).
roof:direction=* Direction from back side of roof to front, i.e. the direction towards which the main face of the roof is looking.
roof:orientation=along/across For roofs with a ridge, the ridge is assumed to be parallel to the longest side of the building (roof:orientation=along). But it can be tagged explicitly with this tag.
roof:colour=* The (dominant) colour of the roof. Useful in conjunction with roof:material=*.
roof:material=* The outermost material of the roof. Useful in conjunction with roof:colour=*.

Usage of height, roof:height, building:levels, roof:levels

There is currently an incompatibility between the meaning of the tags *:levels in 2D and 3D representations.

In 2D, they designate the number of floors of the part: 1 floor, 2 floors... 5 floors, etc.

In 3D, when height tags are not used, the tags *:levels, in the 3D rendering, are converted to simulated heights. Each floor is converted into a 3 meters high rendering.

For example, building:levels=3, roof:levels=1, no tag height=*, no tag roof:height=* will be converted in the 3D rendering into a 12 meters height building with 9 meters under the roof and 3 meters for the roof.

Therefore users can used decimal numbers for levels to have a good height. For example, in taginfo, you can find building:levels=1.5, roof:levels=0.5 or roof:levels=0.2! But what does "0.2 floor" mean in a 2D description of the building?

Rather than using decimal values, add the building heights. You will thus have compatibility between 2D and 3D information.

Example:

Explanations:

  • 1.5 building levels and 0.7 roof levels probably mean 1 useful floor for the building facades and no useful floors for the roof
  • 1.5 + 0.7 = 2.2 floors in total = a height of 6.6 meters for the entire building (using 3 meters for each floor)
  • 0.7 roof floor = a height of 2.1 meters for the roof

Notes:

  • actual building heights are likely unknown for 99% of buildings in OSM. The value 3 meters for a floor is a default value, probably very close to reality for most of these buildings, and will display a good 3D rendering consistent with buildings without height tags. But of course if you know the real heights, use them!
  • in some cases both are clearly necessary. For example for a sports hall, the building levels value is usually one (one floor and one ceiling) but the height is higher than the default 3 meters, so you need to add the actual height (for example building:levels=1, height=6). Please do not use a false 2 levels value to simulate a 6 meters high building if the building only has 1 ceiling!

This section is a wiki template, editable here.

Supported Renderers

Problems and mistakes

Values with problems

Value Image Comment
saltbox, double_saltbox, triple_saltbox, quadruple_saltbox for saltbox Roof Saltbox.png OR Roof3 0.jpg Inconsistent definitions of "saltbox" by some editors/users (through displayed images).

The roof shapes displayed as an image by some editors/users in one case represent a "saltbox" with only one top edge of the roof (which is the usual definition of a building with a saltbox roof, see also  Saltbox house), and in another case a "saltbox" with two top roof edges (which is also called a double_saltbox). See also this mailing list discussion "What is a saltbox?" (Tagging ML, 12 Feb 2020) – with no clear results – and the fairly clear definitions on OSM-4D/Roof table.

conical Roof Cone.png Duplicate of cone
lean_to Unclear, should probably be skillion.
shed Mono-pitched roofing, also sawtooth
gabled_row Unclear, sometimes used on a sawtooth roof, sometimes a row of gabled terrace.
pitched Duplicate of gabled

Possible tagging mistakes

If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!
If you know places with this tag, verify if it could be tagged with another tag.
Automated edits are strongly discouraged unless you really know what you are doing!

See also

Proposed tags

Some roofs (e.g., square buildings) cannot be accurately modeled with the simple techniques described on this page.

Additional roof shapes are suggested in S3DB Proposals, including advanced approaches for manual modelling (e.g., ProposedRoofLines or parts of OSM-4D/Roof table).