BuildingsVisibility

class BuildingsVisibility(val mapZoom: Float, val onScreenBuildings: List<OnScreenBuildingDetails>, var fromMapInteraction: Boolean)

Represents the visibility state of buildings on the screen. Fields can be populated at different points in time as the object is passed around.

Parameters

mapZoom

The current zoom level of the map.

onScreenBuildings

List of buildings currently visible on the screen.

fromMapInteraction

Whether or not the building visibility was triggered from a map interaction

Constructors

Link copied to clipboard
constructor(mapZoom: Float, onScreenBuildings: List<OnScreenBuildingDetails>, fromMapInteraction: Boolean)

Properties

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

A set of building IDs involved in active routing (e.g., navigation paths). Can be modified dynamically as routing changes.

Link copied to clipboard

The building ID representing the currently selected point of interest (POI). Default is -1 to indicate that no POI is currently selected.

Link copied to clipboard

The building ID representing a single focused building, if any. Default is -1 to indicate that no solo building is currently set.

Link copied to clipboard

The building ID representing the user's position. Default is -1 to indicate that no user position is currently assigned.

Functions

Link copied to clipboard
fun copyWith(mapZoom: Float = this.mapZoom, onScreenBuildings: List<OnScreenBuildingDetails> = this.onScreenBuildings, fromMapInteraction: Boolean = this.fromMapInteraction, userPositionBuildingId: Int = this.userPositionBuildingId, selectedPoiBuildingId: Int = this.selectedPoiBuildingId, soloBuildingId: Int = this.soloBuildingId, routingBuildingIds: HashSet<Int> = HashSet(this.routingBuildingIds)): BuildingsVisibility
Link copied to clipboard

Computes and returns a set of buildings that should be forcibly visible. This includes user position, selected POI, solo building, and any buildings in the routing set.