OsmBuilding

data class OsmBuilding(val id: String, val outerRing: List<Position>, val innerRings: List<List<Position>> = emptyList(), val height: Double, val minHeight: Double = 0.0, val name: String? = null, val tags: Map<String, String> = emptyMap())

One OSM building feature, normalized to a simple extrusion model: an outer ring (and optional holes), with height meters above minHeight.

Constructors

Link copied to clipboard
constructor(id: String, outerRing: List<Position>, innerRings: List<List<Position>> = emptyList(), height: Double, minHeight: Double = 0.0, name: String? = null, tags: Map<String, String> = emptyMap())

Properties

Link copied to clipboard

Top of the building, in meters above terrain.

Link copied to clipboard
val id: String

Source identifier (e.g. OSM way/relation id, prefixed with type).

Link copied to clipboard

Optional inner rings (holes) in the same coordinate convention as outerRing.

Link copied to clipboard

Base of the building, in meters above terrain (non-zero for upper-floor extrusions like a tower built on top of a podium).

Link copied to clipboard
val name: String?

Optional display name from name tag.

Link copied to clipboard

Closed outer polygon ring. The list MAY repeat the first point at the end.

Link copied to clipboard

Original OSM tag bag for downstream styling (color, roof, etc.).