View type ? or Camera type ? What about Animation type ?
A camera-driven explorer. Right. But what does it do ?
A multi-building view ? What good is it if I only have 1 building ?
As we recently worked on the multi-floor routes, we became aware that all those concepts, though they do empower developers to shape their map experience ever more precisely, might be confusing to the newcomers.
So this post aims at clarifying the main concepts that you will have to master when integrating VisioWeb into your application.
Hope this helps !
There are 3 different paradigms in VisioWeb for displaying complex venues with one or more buildings, each featuring one or more floors. The view type is initialized as a parameter passed to Mapviewer#setupMultiBuildingView.
The list is interactive and allows the user to choose the current floor. By default, the only interactions possible are scrolling up or down the list and selecting the current floor by tapping the center of the screen. From VisioWeb 1.9.6, developers will be able to override this and enable zoom, rotation, pitch and even click on interactive places (instead of the floor selection).
The gap can be configured from VisioMapEditor, floor per floor. From VisioWeb 1.9.6, it is possible to override stackGap values when calling Mapviewer#setupMultiBuildingView.
When the user changes the current floor, the previous one is animated away (see Animation type, below) and replaced by the new one.
There are 3 different modes to interact with the map. Changing the mode is done explicitly using MultiBuildingView#goTo or automagically by the CameraDrivenExplorer
There are 2 kinds of animation available when showing/hiding some floors typically when calling MultiBuildingView#goTo. The animation type is initialized as a parameter passed to Mapviewer#setupMultiBuildingView.
There are 2 different kinds of camera to display the 3D scene. The camera type is initialized as a parameter passed to Mapviewer#initialize.
The CameraDrivenExplorer class is responsible for guessing when users are interested in a particular building of the venue. It triggers the selection of a building when...
The MultiBuildingView class is responsible for handling all the scene and camera animations that make your maps so alive and interactive.
It earned its name because it was introduced to support multi-building venues at a time when all these interactions were impossible or very difficult to achieve.
But don't be afraid, using MultiBuildingView isn't dedicated to multi-building venues : you can benefit of its features even if your dealing with only one building.