User:AlephNull/roofs

From OpenStreetMap Wiki
Jump to navigation Jump to search

Personal collection of various roof shapes and ideas for how to map them. For current community consensus see Simple 3D Buildings. See also taginfo page for roof:shape.


Goals

Use approaches that work well for their tasks: simple 3D (potentially multiple building parts but no dedicated roof geometry) should mix well with mapping roof ridges explicitly.

Currently an issue: mapping complex roof geometry (such as churches) and lining up skillions and gables.


roof=*

Default/implicit is roof=yes.

Ruins of Siyagha Monastery at [W] Mount Nebo, Jordan
Abandoned hut on Thornton Moor

Open buildings or building parts: roof=no. Currently roofless buildings are commonly mapped as barrier=wall. Particularly for complex ruins it would be nice to be able to distinguish the inside and the outside of the buildings. For example, consider the ruins of an extended monastery complex: mapping only the walls would make it harder to understand the structure. Suggested rendering: similar to normal building, potentially with a dashed outline and/or a lighter fill colour. In some cases it might even make sense to combine roof=no with roof:shape=* if enough is left to recognize the original roof shape.

Buildings or building parts with a roof terrace: roof=terrace.

roof:shape=*

Atomic roof shapes

Example Tagging Comments
Skansen Kolbuszowa kuźnia ze Staniszewskiego 03.09.2010 p.jpg roof:shape=gabled + (roof:orientation=*) Prototypical roof form. Already a very established tag. See [W] gable roof.
Tidemands gate 1.jpg roof:shape=flat Common modern roof form. Already a very established tag. See [W] flat roof.
Chicago bungalow.jpg roof:shape=hipped + (roof:height=H) Common roof form. Already an established tag. See [W] hip roof.
Gönnheim Ludwigstraße 52 006 2020 01 04.jpg roof:shape=half-hipped + (roof:levels=*) + (roof:height=H) Typical values of roof:levels=* might be 1/1.5/2. See [W] hip roof. Basic renderers may fall back to hipped.
Seibu-railway-ikebukuro-line-Motokaji-station-platform.jpg Lörrach - Wohnanlage Stadion2.jpg roof:shape=butterfly + (roof:height=H) Dual of roof:shape=gabled.
Campanario de la parroquia.JPG Pavilion in the Bamberg Grove roof:shape=pyramidal + (roof:height=H)
Little Round Boxes (22271141158).jpg München, UBhf Theresienwiese, Südwestzugang, 13.jpeg roof:shape=round or roof:shape=round_gabled Analogous to roof:shape=gabled. Relatively common roof shape for industrial and agricultural buildings, sometimes reaching down to the ground. Also used as a roof shape for skylights. See [W] barrel roof.
Roofs in Nový Bor 168.jpg Main dome of the Great Synagogue of Rome. roof:shape=round_pyramidal + (roof:height=H) Pyramidal roof slopes which curve to a dull peak. Compare with roof:shape=dome which is similar but has a circular base. See [W] cloister vault which covers 4-sided domical vaults.

Alternative tag name roof:shape=domical

RoundRoof.JPG roof:shape=round_skillion
Tropical Islands - Briesen - panoramio.jpg roof:shape=round_hipped
VILichKIRcheX.jpg roof:shape=round_rhombic_pyramidal A very niche shape. Can fall back to roof:shape=round_pyramidal. Should not fall back to roof:shape=rhombic_pyramidal since the silhouette differs significantly.
House thai style in Uttaradit.jpg Thailand - Flickr - Jarvis-38.jpg roof:shape=tented_gabled Rendering may fall back to roof:shape=gabled.
KUTNA HORA (js) 7.jpg Concave Tended Roof 2.jpg roof:shape=tented_pyramidal + (roof:height=H) Pyramidal roof slopes which curve to a sharp peak. Rendering could fall back to roof:shape=pyramidal.
Andernach - Agrippastraße - Maria Himmelfahrt 08 ies.jpg roof:shape=rhombic_pyramidal + (roof:height=H) + (roof:gable:height=h) By default the gable height is 50% of the roof height, resulting roof sides in the shape of a rhombus. See also [W]rhombic roof. Basic renderers may want to fall back to pyramidal.
Büyük Han, Nicosia, Cyprus 02.jpg
View from roof mosque Ilyas Bey RB.jpg
roof:shape=dome + (roof:height=H) + (roof:radius=R) roof:shape=dome is part of the OSM-4D roof table.

Algorithm sketch: (1) if no H is specified assume that it is equivalent to the height of one building:level=* (2) find the barycentre B of the enclosing polygon; (3) if R is not specified use the smallest distance from the barycentre to a corner of the polygon; (4) draw a dome of radius R and height H over the barycentre.

Antwerpen-Centraal aerial 2.jpg roof:shape=sail_dome + (roof:height=H) + (roof:sides=k) Default value for roof:sides=* is 4.

This shape is called roof:shape=dome_overlapped in the the OSM-4D roof table.

Gambrel-Style Barn.jpg roof:shape=gambrel Should there be a tag for determining at which height the kink lies?
BerlingenMansard.jpg roof:shape=mansard Should there be a tag for determining at which height the kink lies?
Mollans - Bell tower.jpg roof:shape=bell + (roof:height=H) + (roof:sides=k) Sometimes also called ogee roofs. See [W] bell roof.
Domes of Jama Masjid.jpg roof:shape=onion + (roof:radius=R) + (roof:radius:base=r) + (roof:height=H) + (roof:sides=k) Algorithm sketch: (1) if no H is specified assume that it is equivalent to the height of one building:level=* (2) find the barycentre B of the enclosing polygon; (3) if R is not specified use the smallest distance from the barycentre to a corner of the polygon; (4) if no r is specified assume that it is 85% of R; (5) draw a k-sided onion centred at B of height H which has r at its base and R at its widest point. 3D-renderers may choose to ignore k entirely and use a fixed percentage of H for h.

Composite roof shapes

Example Tagging Comments
SaltBoxHouse1.jpg
roof:shape=catslide for the main building, two building parts with roof:shape=gabled and roof:shape=skillion respectively for the actual roof shape. Houses with catslide roofs are sometimes called [W] saltbox houses, but roof:shape=saltbox has ambiguous usage in OpenStreetMap.
TODO roof:shape=gabled + roof:iterations=* Possibly roof:shape=iterated_gabled instead.

Worked examples

Example Tagging
Église Notre-Dame in [W] Antigny.
roof:shape=gabled for the main part. roof:shape=skillion for the side part. roof:shape=pyramidal for the roof of the tower.
2016 Kaplica św. Onufrego w Stroniu Śląskim.jpg
TODO
Kirche Neudorf Grafenau.JPG
roof:shape=conical for the hall, roof:shape=pyramidal for the tower, roof:shape=flat for the connection between them
Laayoune Cathedral 2011.jpg
Arkadi Monastery - Apses of the church.jpg

Weird roofs

[W] Roofless Church, New Harmony, Indiana, USA
[W] Canada Place, Vancouver, Canada
[W] Scandinavium, Göteborg, Sweden
[W] Elbphilharmonie, Hamburg, Germany