Dynamic Visibility of Booths and Rooms by Zoom Level (Below/Above 18)

Hi,
I have a level with many small booths and rooms (lets say around 50 partner booths). Showing all these details at zoom level 18 and below makes the map cluttered and hard to understand.

I’d like to:

  • Below zoom 18: show only an overall/simplified view of the level

  • Above zoom 18: show all booth and room details

Is it possible to control the visibility of booths and room properties based on zoom level in Mappedin?
What would be the recommended approach?

Thanks!

What you describe is possible when using Mappedin SDKs to create a custom app. You could detect the zoom level using the Camera APIs and call MapView.udpateState to hide or show different things on the map.

Thanks for the response!

I’d like to clarify my use case a bit further, as it’s slightly different from general zoom-based clutter control.

Within a single Level, I have a large room (for example, an “Exchange” room) that contains multiple smaller booths inside it.

My requirement is more of a drill‑down interaction:

Default view (initial load)

Show the entire level with all rooms visible
The Exchange room should appear as a single, overall room (no internal booth details visible)

Focused view (On user interaction)

When the user clicks the Exchange room, I want to transition into a detailed view of that room, revealing the booths inside it
Other rooms on the same level should remain visible and unchanged

So this is less about hiding/showing content for the entire level, and more about progressively revealing details within one specific room based on user interaction.

This also possible when using our SDKs. You could show and hide the MapObjects that are in the Space (room) at specific zoom levels. For the zones you have drawn around them, these could be created as Areas in Mappedin Maker and shown and hidden as well.

It would take a bit more logic than doing it for everything on the floor. You’d need to allow the user to pick the room and then show/hide content that’s within that room by either calculating if a MapObject or area is inside the room using its latitude and longitude coordinates accessed using the geoJSON properties of Space, MapObject and Area.

An alternative to using coordinates you could add an externalId to each and filter based on those. This would require the app to maintain a list of which externalId fields are in each space (room).