streets-gl icon indicating copy to clipboard operation
streets-gl copied to clipboard

Rendering roof parts without volumes

Open Tntnnbltn opened this issue 2 years ago • 1 comments

When rendering certain roof types, such as gabled or skillion, a partial segment of wall is rendered with that shape, e.g. the triangular wall sements for a gabled roof, or a wedge shape for skillion. It also renders a face along the bottom of the object.

There are certain situations where it would be nice to be able to render the roof without this wall or bottom face, to reflect the appearance of the actual object. For example:

roof:shape=gabled: image

roof:shape=skillion: image

roof:shape=skillion (to the left): image

These shapes can be approximated in streets.gl already (despite having the partial wall face), but having the ability to control this would allow for more accurate rendering of objects. e.g. F4maps currently does not render any side walls if tagged as building:part=roof, which allows this veranda to be modelled. image

Possible existing tags that could be used to guess author intent include:

  • building:part=roof. (vs. mapping as building:part=yes and including data for roof:shape and roof:height)
  • wall=no

Note: There are example of situations where the wall face should be rendered, so any change should take this into consideration. image

Tntnnbltn avatar Aug 15 '23 16:08 Tntnnbltn

There are example of situations where the wall face should be rendered, so any change should take this into consideration.

Are there existing tagging practices for indicating whether this face should be present or not? According to the diagram in Simple 3D Buildings § Terminology in the OSM wiki, it seems like the correct term for this wall face is "gable". Taginfo shows two tags that perhaps are used with this goal: roof:gable=yes/no and building:gable_wall=yes/no.

If I'm reading the Wikipedia article correctly, the former should represent only the triangular shape in the roof, using in the same material as the roof (so this would match the situation you illustrated above), whereas the latter would represent the entire wall extending upwards in a triangular shape to meet the roof, i.e. the triangle bit has the same material as the wall.

Does this sound correct to you?

waldyrious avatar Sep 03 '23 09:09 waldyrious