HyperLabels: Browsing of Dense and Hierarchical Molecular 3D Models

—We present a method for the browsing of hierarchical 3D models in which we combine the typical navigation of hierarchical structures in a 2D environment—using clicks on nodes, links, or icons—with a 3D spatial data visualization. Our approach is motivated by large molecular models, for which the traditional single-scale navigational metaphors are not suitable. Multi-scale phenomena, e.g., in astronomy or geography, are complex to navigate due to their large data spaces and multi-level organization. Models from structural biology are in addition also densely crowded in space and scale. Cutaways are needed to show individual model subparts. The camera has to support exploration on the level of a whole virus, as well as on the level of a small molecule. We address these challenges by employing HyperLabels: active labels that—in addition to their annotational role—also support user interaction. Clicks on HyperLabels select the next structure to be explored. Then, we adjust the visualization to showcase the inner composition of the selected subpart and enable further exploration. Finally, we use a breadcrumbs panel for orientation and as a mechanism to traverse upwards in the model hierarchy. We demonstrate our concept of hierarchical 3D model browsing using two exemplary models from meso-scale biology.


INTRODUCTION
B IOLOGY as a scientific discipline has reached a point where we begin to understand the essential building blocks of life, on every level of its structural organization. A huge body of work acts as supporting evidence and most of the structural details are now digitally available. This data has sparked an integrative approach to biology: Known elementary pieces of knowledge are combined to describe a more complex system. Visualization plays an important role in this effort [51], [55]. Two such complex systems have been modeled at The Scripps Research Institute using cellPACK procedural modeling [36], i. e., a model of HIV [37] (Figure 1) and a draft model of the Mycoplasma bacterium ( Figure 9). While these life forms can be considered rather primitive from a biological perspective, their structural detail results in models with a huge geometric complexity.
This complexity stems from several characteristics of the models, universal for all cellular organisms or viruses. They are hierarchically organized across several scales, and each scale contains potentially millions of structural element instances. Moreover, these instances are densely packed in 3D space. Although we can interactively render huge amounts of geometry today, navigating through and exploring such dense, multi-scale, multi-instance, hierarchical, and threedimensional scenes remains a fundamental challenge.
The difficulty in navigating these environments is caused by relying on traditional metaphors developed for macroscopic scenery walkthroughs, which often assume scenes composed of extruded 2D surfaces with relatively sparsely populated geometries (e. g., Earth surface). As we deal with entirely new properties in our case, the state-of-the-art navigational metaphors are not well suited for walkthroughs due to the dense, 3D nature of biological scenes. We address this challenge with a novel navigation technique by leveraging the 3D model's hierarchical meta data. We use the names of substructures of a complex molecular model for annotation as textual labels. These labels-which we call HyperLabels-also support user interaction, making them active, clickable elements, as opposed to having just the passive role of annotating visible items that they usually play in visualization. Similar to a click on a folder icon in a file management system, a click on a HyperLabel results in opening up the corresponding structure and revealing its content (i. e., its inner composition). Through this interaction, we allow users to reveal new levels, show previously hidden structures, and make them accessible for further exploration.
This navigation mode of browsing the 3D model through clicking on labels enables navigation both in the spatial space as well as the hierarchically organized scale space. To realize a new form of visual 3D data exploration, we contribute: • a novel approach for navigating through the hierarchy of 3D structures-the concept of Hierarchical 3D Model Browsing, in which a 3D model is recursively explored by selecting individual parts of its hierarchical organization directly in the 3D visualization; • the concept of HyperLabels, i. e., active visualization elements that play both a navigational and annotational role in a visualization system; and • the design and realization of Structure of Interest Opening and its three parts Sparsification, Anchoring, and Re-annotation that deal with scene visibility, camera control, and HyperLabels coordination, respectively.  1. The organization of models from structural biology can be complex and it is often impossible to convey its architecture using just a single view and cutting settings. Here, we consecutively open up a model of an HIV particle to show its several levels, each communicating a different spatial subpart of the virus.

RELATED WORK
In labeling, researchers have previously focused mostly on algorithms that generate optimal label layouts, which we briefly review below. In this discussion we specifically point out examples where labels play more than just a passive role of annotation. Since we use the active, clickable labels for navigation, we also describe how our method relates to previous work in navigation of 3D virtual environments. Finally, the character of biological models presents the challenge of showing all their parts due to the density of such environments, which leads to frequent occlusion. Therefore, we present an overview of occlusion-managing methods.

(Clickable) Labels in Visualization
Textual labels have been used extensively in scientific visualization to augment the rendered spatial data with a verbal description. Information-rich virtual environments [8] are created, which combine abstract visual representations with 3D virtual environments. For interactive 3D models, emphasis has been on algorithms that generate effective label layouts, as well as temporal coherence upon user interaction. Oeltze-Jafra and Preim [58] provide a comprehensive overview of labeling techniques used in medical data visualization. These techniques can generally be categorized as either external labeling or internal labeling. In external labeling [1], [15], [30], [32], [62], [67], the label text is placed into an empty space, usually around the model, and connected with the structure by a leader line. In internal labeling [5], [14], [60], [64], the label is placed directly over the annotated object. A combination of the two approaches has also been proposed for the specific use in scientific visualization [26], [27], [28]. In addition to these single-scale annotation methods, Kouřil et al. [40] described a method for annotating multi-scale and hierarchical 3D models. Inspired by the level-of-detail techniques in computer graphics, it selects an appropriate level of textual annotation based on the distance to the object.
While in the techniques mentioned so far the labels are mere carriers of information, other approaches facilitate interaction by clicking on a label. Clickable labels are especially prominent in visualizations for anatomy education [63]. As an early example, ZoomIllustrator by Preim et al. [61] provided anatomical models annotated with text on both sides of the 3D view. These annotations were hyperlinks and, by clicking on them, users could reveal more information about particular structures of interest. Later, Mühler and Preim [57] used clickable labels to indicate structures that are invisible as they are occluded by other objects. Upon clicking on a label, the camera moved to a viewpoint from which the selected structure is fully visible. Jankowski and Decker's dual-mode interface [34] features hyperlink elements that integrate 3D models into a web page environment. In their first mode, the model is embedded into a website, similarly to how it is done with other media (e. g., images). Another mode presents the 3D environment in full screen and integrates the textual annotation into the 3D view. However, they presented their design on a simple scene consisting of just a few geometric primitives such that no changes in the visibility of parts of the environment are needed for exploring it.
Most related to our concept is Lerin et al.'s work [45]. They use labels in a map and clicking on them changes the view position and zoom level based on the clicked structure. They also employ a panel that compiles clicked labels and facilitates hierarchical navigation. They, however, use immediate transitions to a new viewpoint-in contrast to our continuous animation. Moreover, we deal with three-dimensional hierarchical models, which pose many additional challenges, such as objects occluding each other, changing views depending on the camera location, and the need to navigate the space using six degrees of freedom.
The breadcrumbs panel as a hierarchical interaction element can be found also in Kopper et al.'s work [39]. At the top of the screen, they render a miniature of the highest level of the model (i. e., essentially the whole model) and a miniature of the current level of scale. We extend this concept by showing the entire path from the highest level of scale to the current one, thus providing orientation and navigation to all the intermediate scale levels.

Navigation in 3D Multi-Scale Environments
Several authors discuss aspects of 3D navigation. Jankowski and Hachet [35], for example, surveyed many interaction techniques for navigating 3D environments. In addition, Christie et al. [13] discussed camera control in computer graphics with a focus on semi-and fully-automatic systems. Specifically for visualization systems, they suggest that intelligent algorithms for automatic camera control can take advantage of the data and domain characteristics, as well as the task goals of the user. Both surveys focus on macro-space techniques and ignore multi-scale settings.
Early systems like Pad [59] and Pad++ [4] can be considered as the first multi-scale environments in computing. Furnas and Bederson [25] formalized the concept of 2D multi-scale environments with their Space-Scale Diagrams. Mackinlay et al. [50] provided a solution for efficiently navigating large 3D workspaces by adjusting the camera speed proportionally to the distance from a selected target object. Using this approach, it is possible to skip through the uninteresting (empty) space quickly, while facilitating fine navigation when inspecting a target from close distance. Ware and Fleet [74] extended this concept by changing the camera speed based on a few samples from the current depth buffer. McCrae et al. [52] then developed a technique for navigating multi-scale environments. They use an image-based representation of a scene-a cubemap-that allows them to avoid collisions with scene objects. They demonstrated this approach on a model of the Earth. While such a setting indeed uses multi-scale representations, their scene is not crowded and the objects of interest are mostly distributed on the surface of a sphere. Tan et al. [68] improved performance of users navigating a 3D environment by speed-coupled flying with orbiting. The speed is coupled with the height and tilt of the camera in respect of the target object. This mode of navigation allowed users to gain a global overview, while still being able to examine local features. The technique is again tailored for a macroscopic world, assuming that all objects reside on a ground surface.
Multiscale navigation is particularly important for visualizations where the data covers multiple orders of magnitude, e. g., in astronomy. OpenSpace [7], for example, relies on the Dynamic Scene Graph [2] to solve the problem of limited floating-point number precision for positions of individual objects. Sagristà et al. [65] described a system for visualizing the star catalog from the Gaia mission, which comprises 1.3 billion stars. To deal with this amount of data, they used a data access mechanism tailored to interactive stellar visualizations as well as an approach ensuring a sufficient precision for high dynamic distance ranges. A recent example of nanoscale visualization is Halladjian et al.'s ScaleTrotter [29] for gene data, where they focus largely on the visual aspects of the scale transitions.
Both astronomical and biological data share the property of scales crossing many orders of magnitude. However, in biology the elements are much more densely packed in space and scale [29]. Individual planets or stars are separated by a vast amount of empty space, whereas the environment of a cell is crowded by omnipresent and always-moving molecules, which we address with our approach.

Occlusion Management
Due to the dense packing we also need to adjust the scene's visibility settings to prevent occluding objects of interest. Elmqvist and Tsigas [20] define a taxonomy of occlusion management techniques for 3D visualizations, in which they identify five design patterns: multiple viewports, virtual Xray tools, tour planners, volumetric probes, and projection distorters. They also classify visual tasks affected by occlusion. Among these, the task of spatial relation-gaining an understanding of spatial arrangement of several objects-is most relevant in our use case.
Occlusion management approaches can generally be divided into techniques changing optical attributes and techniques modifying the spatial arrangement. Our goal is to inform users about the spatial relation between different parts of a certain biological structure. In this case, it is less desirable to modify the spatial positions of the 3D scene elements. Therefore, we prefer techniques that alter the visual attributes of the structures, e. g., through cutaways or transparency settings, rather than techniques employing exploded views [10], [46], deformations [17], [18], [53], or displacements [21], [22]. Viola and Gröller [72] summarize occlusion-handling approaches in visualization, which address the issue in a smart way, i. e., leveraging the underlying features of the model and/or domain as well as the user's expertise. In our work, we leverage the hierarchical and encapsulating character of meso-scale molecular models to automatically create view-dependent cutaways.
For large, multi-scale, multi-instance, dense, and hierarchical molecular models, only little work exists that deals with occlusion management. Most of the visibility techniques work on the scale of individual molecules, like exploded views for showing symmetrical parts of a molecule [70] or depicting possible binding locations for protein interactions [24]. Le Muzic et al. [44] investigated visibility management for complex biological models with an inherent hierarchy to generate static illustrations. Their method is rather tailored for a user-illustrator, who prepares a static illustration that communicates a specific story or character of the model. Sorger et al. [66] used an exploded view on molecular data. In one of their use cases, the technique exposes the inner composition of a structure. However, they also focus on providing an interface (in this case a scripting interface coupled with a visual editor) for a content-creator, rather than a method for interactive exploration.
The computer graphics field offers many cutaway techniques for polygonal data, from early investigations of cutaways in interactive settings [23], through the definition of rules for automatic cutaways generation [19], to techniques that give users more control of the shape of the cut [16], [48]. These solutions put emphasis on generating illustrations, yet the demonstrated cases use rather simple models, compared to our molecular models from biology.
Particularly interesting is the work by Li et al. [47], who introduced a sophisticated system for generating cutaways of complex polygonal models. They produce static illustrations that capture the relationships between structures in the proximity of a selected model part. They employ (passive) labels for annotation and allow users to interactively select different parts from a list using a separate UI. Their semiautomatic approach relies on the user categorizing individual parts into types of object shapes to create cuts based on these templates. Instead of such a manual step, in our work we take advantage of the biological model characteristics to generate cutaways fully automatically. Through our HyperLabels concept we also incorporate the multi-scale aspect of the data, while facilitating a more immediate interaction.
Volumetric data (rather than polygonal models), where basically every data point signifies a mass, more closely resemble the density of information of the molecular models we work with. In volume visualization, a transfer function typically maps the sampled value to certain optical attributes, such as color and opacity. A view-dependent approach (rather than a global transfer function for the whole model) is then more suitable for exploratory tasks. A plethora of methods that automatically adjust the visibility setting to gain a view inside the volumetric model exist, many of which attempt to preserve contextual information about the cutaway parts [9], [12], [42].
Viola et al. [73] formalized how less important structures are suppressed to prevent occluding more salient structures in the model. This concept has later also been applied on polygonal data [11]. Building on the importance-driven rendering, Viola et al. [71] presented a framework for an interactive focus of attention for volumetric data, where they automatically compute the most expressive view onto a specific feature. The user selects the focus structure from a list. Employing the underlying importance distribution of features, the visualization gradually changes to shift the attention to the newly selected object. We also select a subset of the model and adjust the visualization to provide a good view onto it. We extend this concept by employing the multi-scale and hierarchical aspects of computationally generated molecular models. We also take advantage of the multi-instance property in resolving occlusions, rather than defining an importance distribution across all scene objects.

HIERARCHICAL 3D MODEL BROWSING
As discussed in the last section, existing techniques to interactively explore complex biological models generally suffer from two problems. First, they assume only singlescale environments. Second, they were initially developed for a macroscopic world, i. e., representations of objects approximately the size of a human body. A traditional transition between structures of significantly different sizes, for example, would lead to a frequent use of the zooming functionality due to the multi-scale and dense character of our biologic scenes. It is difficult to set the appropriate zooming speed as it has to be adjusted according to the scale level. For scales representing a whole virus, for instance, the desirable speed is higher than the one for precisely navigating on the scale of small proteins. The multi-scale character of the environment requires changing the speed based on the structure size that is close to the current camera position. While such a method has been proposed, e. g., by McCrae et al. [52], it is highly parameter-and scene-sensitive and can still lead to an extensive zooming to switch between two structures of interest.
We developed our technique for users that are not necessarily experts in biology. As a part of science outreach and education in general, effective and intuitive interactive visualizations are essential for explaining scientific subject matter to a non-expert audience. We leverage the widely used functionality of clicking on textual links that are familiar even to less computer-literate people. In aiming for this target group, expert tasks such as accessing a specific protein from any point in the hierarchy have a lower priority.
We propose a new way of navigating 3D environments that complements existing navigational metaphors employed in visualization like orbiting around the model, panning, and zooming (i. e., flying in the camera direction). We use navigation by direct interaction with the labels. This has the significant benefit that the process of transitioning between two salient objects is automated and requires no further user interaction. Moreover, we use both the 3D spatial characteristics and the 3D model's hierarchy to facilitate browsing. We borrow the latter from the click, doubleclick, or touch styles of navigation that facilitate intuitive browsing in hypertext documents and file structure trees. Our method for hierarchical 3D model browsing is facilitated by three components in the visualization technique.
First, we deploy HyperLabels in the scene to annotate possible targets, i. e., structures of interest (SoIs). Each HyperLabel can be clicked to indicate interest and select the particular object as the target for navigating toward it. Second, in addition to the HyperLabels integrated in the 3D view, we provide a contextual element through a Breadcrumbs panel. This panel expresses the current location inside the model's hierarchy and enables selection of a current structure of interest. Third, the selection of a certain label simultaneously also indicates an interest in exploring the inner structure of the object associated to this label. We thus initiate a process of Structure of Interest Opening in which the composition of the selected object is revealed in the 3D spatial view.
We realize SoI Opening using three main procedures, which are triggered by clicking on a label. These are: sparsification, anchoring, and re-annotation. We use these procedures in conjunction to facilitate an expressive and seamless browsing of the molecular model. The effect of the three steps is that an object in focus opens up, similar to how a folder would open up in a file browser. The user is provided with a glimpse into the inner composition of the selected structure to facilitate understanding of its subcomponents.
Next, we explain the details of our data-driven approach. It takes advantage of the data characteristics but otherwise is fully automatic, without the need for manual pre-processing (such as pre-defining optimal viewing positions). We demonstrate our technique using a scenario from structural biology which not only serves as a motivation for our work but is also a representative setting in which multi-scale and multi-instance structures are featured in a dense, fully threedimensional environment.

Abstract and Spatial View Coupling
The meta data containing the information about hierarchical relationships of individual parts of the model represents a Fig. 3. HyperLabels are textual visualization elements that combine annotation with interaction. Here, HyperLabels are placed in the scene to enable navigation in the spatial model. A blue background is displayed for a HyperLabel hovered over, to indicate, together with the changed cursor, that the text is clickable.
kind of abstract data that is usually visualized using abstract visual representations. On the other hand, the 3D model carries information about its spatial characteristics: the spatial arrangement of structures as well as concentrations and distributions of each elementary building type in space. We refer to this second aspect of the model as the spatial data. We combine the two by showing the spatial and abstract aspect of the model in a single integrated view, to communicate both facets of the model to the user. We purposefully allocate a bigger part of the screen to the spatial data (as opposed to the other way around; e. g., [3]) to allow viewers to understand how individual parts fit together-a task in which the spatial characteristics matter more than the abstract ones. Our HyperLabels realize a first integration level by placing them directly over the structures in the spatial view, establishing a connection between the shown 3D element and its textual description. With this setup, the user would have to look up the structure in a separate, fully hierarchical view (provided in any arbitrary form) and establish certain relationships between the structure and other objects.
To avoid this separation of both data aspects, we further integrate the spatial and the abstract view using the breadcrumbs panel. Inspired by an established concept from web design [41,Chapter 6], the breadcrumbs panel provides a path through the abstract data, showing only its subset that has been traversed. This approach mirrors the same concept used in the spatial view where structures that are not children of the object in focus remain hidden. By employing both of these integration levels, the relevant information about the hierarchical relations of the selected structure is provided to the user directly. We believe that by constructing such a minimal interface we lower the cognitive load, as the user does not have to switch contexts and shift focus between multiple views to get the presently relevant information.

Top-Down Navigation: HyperLabels
Our HyperLabels naturally fulfill the role of traditional textual labels: they connect the 3D structure with its annotations. We also use them, however, as an entry point for selections. Without our labels, choosing a structure that the user wants to explore next is ambiguous: due to its multi-scale character, a click anywhere in the scene can be interpreted as a selection on any of the levels of the shown structure. Clickable labels thus define a small, specific screen region where a concrete interaction is conducted: Users know exactly which structure they are selecting, and we use this information as an input to the navigation processes that follow.
We see several parallels of HyperLabels with the concept of hyperlinks from the Web. When a hyperlink is clicked, it transports the user to a new location (a web page), and the content of this new location is shown in the form of text, images, and other multimedia. HyperLabels work in a similar fashion: We use different locations (landmarks) as the destinations to which users can be transported, and the content in our case is the inner structure, i. e., subparts of landmarks. We thus adopted the name as well as some design concepts (e. g., cursor change and different style of rendering upon hover, see Figure 3).
The primary interaction purpose of HyperLabels is, therefore, to establish the upcoming focus: A click on a Hyper-Label selects the corresponding object as the new structure of interest. To fully realize the concept of hierarchical 3D model browsing, however, a label activation has to be coupled with an appropriate follow-up action. To allow users to recursively activate HyperLabel and thus traverse the hierarchy in a topdown direction, we follow the activation by opening of the structure of interest. We thus then show the object's children along with their HyperLabels, which allow users to continue their model exploration further down the hierarchy.

Bottom-Up Navigation: Breadcrumbs Panel
To also allow users to reverse the direction of their exploration, we could use a simple "back" button, as in Web browsing. This technique would, however, lead to users lose track of their current location in the model hierarchyan aspect that is of little importance in Web browsing but essential in understanding both the spatial and hierarchical structure of our biological models. We thus employ a breadcrumbs panel (Figure 4), essentially a reduced version of a tree that only shows the path from the current location to the root and thus requires only little screen space [41]. By constructing the breadcrumbs panel from the respective HyperLabels, we allow users to traverse the tree bottom-up, also allowing them to skip several stages if needed.
In our integrated view we link the spatial and abstract parts such that interactions in one part cause changes in the other. We thus ensure that both views remain in sync and show information about the current focus object, along with options for further exploration and the current hierarchy level. The breadcrumbs panel also serves as a kind of URL.

Structure of Interest Opening (or Closing)
For both ways of navigating the hierarchy, we need a way to adjust the visualization such that it communicates the architecture of the explored subpart and enables further exploration. This opening of the structure of interest comprises of three steps that we describe next.
We cannot continue to show all elements as we explore hierarchy branches due to our models' high densityotherwise only the outer-most layer would be visible. Our first step is, therefore, to selectively control the visibility of subobject elements using sparsification of the dense 3D model. It selects a subset of the model to be shown, based on the focus object. We adjust the visibility settings to provide an unobstructed view into the model that facilitates further exploration of substructures. We describe the specific conceptual sparsification strategies in Section 4.1.
Next, as the new focus object becomes the center of attention, we need to dedicate most of the screen real estate to it. The object may previously have occupied only a few pixels, but to allow users to explore its architectural composition we need to re-allocate the screen space. We thus smoothly adjust the viewpoint and relocate the camera to show the new hierarchy branch's structural representatives that remain after sparsification in the center and in detail. We call this step anchoring: It attaches the camera to a particular model subpart and embeds it into its local coordinate system. The anchoring also allows us to use additional, single-scale interaction mechanisms, i. e., orbiting, panning, and zooming. We describe anchoring in Section 4.2.
Sparsification and anchoring change the visualization smoothly, but ultimately a completely new view is shown, with new model elements being visible. In a third step, we thus need to trigger the re-annotation of the model to communicate the newly visible landmarks. We describe how to derive the new labels in Section 4.3.
All three procedures-sparsification, anchoring, and reannotation-result in a change of the visualization. To support viewers in comprehending these changes, we perform each step using an animated transition and in a staged manner [31]. After a click on a scene HyperLabel, we thus first fade out objects due to sparsification, we then transition the camera to its new anchor, and finally fade in new Hy-perLabels. Likewise, for each click in the breadcrumbs panel, we first smoothly zoom out the camera, then fade in the reappearing objects, and finally show the new HyperLabels.

TECHNICAL REALIZATION
The exploration usually starts at the highest level of the hierarchical organization. We thus render the whole 3D model [43] and place HyperLabels corresponding to the highest level of annotation of the spatial view. We initialize the breadcrumbs panel with a home element that allows users to restore the original state of the visualization.
The identifier of an activated HyperLabel now serves as an input for the sparsification. This ID refers to a subpart of the hierarchical organization of the model. There can be many instances of this subpart in the model. In the next step, therefore, we make use of this multi-instance character of the model in adjusting the visibility.

Sparsification
In contrast to other smart visibility techniques [72] such as cut-aways or exploded views, the main goal of sparsification is to allow users to effectively navigate a dense model-even if the camera is placed in the midst of the model. We thus not only need to remove objects to allow users to focus on the target structure, but we also have to ensure that there is a collision-free camera path toward and, later, for orbiting around the newly anchored object of interest. Such view manipulations need to be free from suddenly appearing and disappearing structures.
In scene sparsification, we leverage the multi-instance character of the model: Most object types are instantiated in the scene many times (hundred times or more). We can thus maintain the model character and selectively reduce the number of duplicates where they would interfere with the navigation. We carry out the sparsification in two major stages: Representative Instances Selection and Visibility Adjustment. In the first stage, we select representative instances for all children object types. In the second stage, we resolve the final visibility of these instances. After sparsification, we then pass on the determined visibility settings to the rendering module of the visualization system.

Representative Instances Selection
We select the representative instances, at least one for each object type, both for the level of leaves (e. g., proteins) as well as composite objects (e. g., the HIV particle). We considered different strategies for the selection of the representatives: random selection, first in an array, and closest to the camera. While the computation of the first two is straight-forward, for the latter we compare the distance between the coordinates of the object's center of mass and the camera position in world space. We then select the instance with the shortest such distance as the representative for a particular object type. This approach, in particular, is simple to implement, efficient, and it provides good results in most cases for the used models. More elaborate strategies would also be possible such as mutual distribution in space. Here, distances between the selected representatives could be optimized and we may study variations between optimizing distances in 3D or the projected positions in 2D.

Visibility Adjustment
The most straightforward way of deciding the final visibility is to select exactly those objects that we chose in the previous step as representatives. We call this strategy all-but-one sparsification ( Figure 5, top), meaning that all the object instances except one are "sparsified" (i. e., removed). This type of sparsification has the advantage of totally removing the effects of occlusion caused by the scene's density, resulting in a very sparse model. Furthermore, it implicitly ensures that all the representative instances will be observable from some angle.
The disadvantage of all-but-one sparsification is, however, that the real density of the scene is not conveyed in any way after the sparsification and the understanding of the relative abundance of these elementary structures is lost. This is illustrated in Figure 6 where the removed parts are indicated. To counter this weakness, we offer a second strategy-contextcut sparsification (Figure 5, bottom)-in which we keep possibly more than one instance visible for each type. We thus show the previously selected representative instances and show them as with all-but-one sparsification. In addition, we place a cutting plane parallel to the viewing plane at the position of the most distant selected representative instance of all types of children and re-introduce all instances that fall behind this cutting plane into the scene. This strategy ensures   6. Parts affected by the sparsification can be rendered with various styles: they can be completely removed from the scene, displayed using a ghosting effect, i. e., rendered with a lower opacity (left), or rendered as only contours (right). Contouring and ghosting indicate the cut-away parts and thus provide a context information to the user. that all instances for currently shown types are visible, while still keeping the dense context of the model.
We expect that several other sparsification strategies can be found, each working well in specific conditions and scenarios. The strategies that we presented here, however, demonstrate the principle of sparsification as a component in multi-scale model browsing and turned out to be well suited for our examples from biology.

Visual Style
In some cases, the objects indicated as to-be-removed in the sparsification step do not necessarily need to be completely discarded and, for the benefit of the viewer, we might want to keep some as a context. Keeping a certain footprint of the cut-away parts proved to be an important aspect: it communicates the context (e. g., [69]) and users are not misled into thinking that a completely new scene has been shown. We provide more insights on this issue based on an interview with one of our domain experts in Section 6.
To demonstrate this concept (see Figure 6), we implemented a ghosting effect [23] which does not completely hide the cut-away objects, but rather renders them with a lower opacity. We also show a contour style (e. g., [6], [33]) where only a line representation of the structure of interest is drawn. In summary, each scene object belongs to one of three groups depending on the currently selected structure of interest. First, there are those objects that are either representatives or that have been nevertheless kept in the sparsification step. We always render these fully opaque. Second, we have instances of the current object type which have been selected to be cut away. For these objects we can choose the less salient rendering style just discussed. Third, there are those objects which are not relevant in the current view, which belong to a different branch of the hierarchy. We completely remove such objects from the scene.

Anchoring
The next step brings the newly selected object into focus, moving the camera through the emptied space such that the structure of interest is centered and enlarged. Furthermore, this step re-attaches the camera to this object for future interactions. We thus adjust the camera position, its orientation, and its pivot point. As the possible objects of interest are quite diverse in shape, we start by computing the bounding sphere of the targets on-demand. This process ensures that all selected instances fit into the view, although in the future one may consider to forgo less important structures to prioritize showing more important ones in greater detail.
We then determine the target position of the camera P N as a point on the line from the bounding sphere's center to the current camera position as follows: where P C is the current camera position, C is the center of the bounding sphere enclosing all shown objects of the new target, and we calculate the value of z new using the camera parameters and the principle of similar triangle ratios (see our illustration of the geometric situation in Figure 7) as: We adjust the orientation of the camera such that its forward vector points in the direction of the center of the current bounding sphere. To ensure that no part of the viewed structure is clipped away by the near plane, we also test whether the closest point on the bounding sphere is not closer to the camera position than the near plane value. If so, we translate it to be fully inside the volume of the viewing frustum. Last, we set the pivot point for the local orbiting interaction to be at the center of the bounding sphere. This position may seem to be an arbitrary choice because it does not necessarily correspond to any shown object. Consider, however, that the bounding sphere essentially encloses a single object entity at a one-step-higher level of the hierarchy, so essentially we enable users to orbit around the center of this entity and to explore its inner construction.

Re-annotation
To update the breadcrumbs panel we append the triggered HyperLabel at the end, illustrating the newly shown hierarchical level. To update the set of shown HyperLabels to the new 3D view we use an adjusted version of the Labels on Levels technique [40] for the annotation of multi-scale scenes. In contrast to Labels on Levels, when placing HyperLabels we do not determine the label level (and thus the label shown) automatically using a distance from the camera, but rather provide this information to the algorithm as an input using the output of the sparsification step.
We implement this concept using an annotation state buffer that contains the whole scene's labeling state. For all objects it records on which level and with which label this object should be annotated. We update this buffer, for all objects affected by the sparsification, by adjusting their annotation state-labeling them not on the level of the parent (newly selected object in focus) but on the level of the children. We efficiently determine these object children using an object ID look-up table, computed in pre-processing, that contains the immediate children for each object.
The placement of HyperLabels follows the Labels on Levels technique: We select a particular instance from all regions in the image that share the same annotation. We can skip this step for all-but-one sparsification because in that case we only show one object, i. e., the representative instance for each type. Other sparsification strategies (e. g., one that keeps more than one representative instance) provide more candidates for label placement. In that case, we perform sparsification also in the domain of possible labeling candidates, i. e., we render instances but exclude them from the label placement algorithm. We record whether an instance is excluded from the labeling using an additional flag in the annotation state buffer. We determine the final position of a HyperLabel as the most salient point on the selected instance projected onto the screen (see the previous publication by Kouřil et al. [40] for further details), and thus overlay a Hyperlabel over the structure. We opted for placing the label directly over the corresponding structure rather than using leader lines, which would introduce additional geometry (and therefore additional visual clutter) into the scene.
We introduce those HyperLabels that are newly added to the scene by fading them in, while those that are removed from the scene are faded out. Later, it is possible for users to explore the focus structure locally using orbiting, panning, or zooming. To facilitate such exploration, we fade out Hyper-Labels during the interaction: Keeping the labels in the scene can distract users as we would constantly have to update their positions. Once the interaction is completed, however, we show the HyperLabels again. After this re-annotation, all HyperLabels are ready for being selected so that the hierarchical exploration of another level can continue.

RESULTS
We demonstrate the HyperLabels-enabled spatial and hierarchical browsing using the previously mentioned molecular meso-scale models: a mature Human Immunodeficiency Virus (HIV) embedded in blood plasma and a Mycoplasma genitalium bacterium. Both models were generated by the cellPACK modeling tool [36] and our proof-of-concept implementation is built on top of the Marion framework [56]. We show the HyperLabels interaction in the supplemental video, where the textual labels can also be observed in a sufficient size.
In the first model, an HIV particle is surrounded by blood plasma proteins, making it initially invisible. The interaction with HyperLabels allows us to reveal the true composition of the blood plasma and show that the virus is submerged in it. We show a tour through the composition of the virus in Figure 8(a)-(c), step-by-step revealing more internal structures of the virus.
The mycoplasma shown in Figure 9 is our second example, it is one of the smallest bacteria. It is only approx. 400 nm long and contains a very small genome, just over 580,000 base pairs, making it a model organism for a minimal genome life form. Besides proteins, it contains many fiber ingredients (RNA, DNA, peptide, and lypoglycane). The depicted model is still a draft, it does not yet contain the bi-lipid membrane that would enclose the internal structure of the bacterium (this will be added in further extensions of the model). Due to its simplicity in compartmentation, the encapsulation relationship is present here as well, although the model is overall less hierarchically structured than the HIV example. Again, the images in Figure 9(a)-(c) show several steps of hierarchical exploration.
We evaluated our navigational technique through a feedback from two experts in molecular and cellular biology. We selected these two experts specifically for their rich background in science communication such as 3D animations as it allows us to understand how our approach is suitable for the education of a general audience. Both of them were familiar with our previous work-one of them is a collaboration partner with whom we have previously worked on a different project. However, neither one of them was involved in the design of the proposed technique.
The first domain expert (22 years of experience in the field) characterized this new way of navigation as a great guided tour with sophisticated clipping, useful for a firsttime user getting familiar with a molecular model. It could also be used for presentation purposes (slideshow, screen capture). He noted that our strategy of revealing encapsulated objects automatically generated views that perfectly showcase a particular part of the model (see Figure 8). A previous version we demonstrated to him missed the ability to show the cut-away part using ghosting. He felt that this was a crucial part since, without it, the mental link between what is shown before and after the sparsification could be lost, prompting us to add this feature. Another key observation from him was the fact that a user might not even be aware that labels can be clickable. He brought up the example of a web link that leads to a change of cursor shape upon hover, which we afterwards also incorporated in the approach. Another possibility he suggested was to make the appearance resemble a button more closely. The second domain expert (13 years of professional experience), also based on additional feedback from her research group, confirmed the usefulness of our navigation method, especially for students and the general public. She expressed a desire for additional secondary interactions, in this case showing more detailed information about the particular structure and possibly also some way to communicate a sense of the currently depicted size or scale. One member of her group even noted that they would be able to use such a tool as a visual reference because the structures are shown in correct proportions. They also confirmed that sparsification coupled with anchoring can convey a sense of focusing onto a specific part of the model.

DISCUSSION
Our new navigational technique is motivated by science dissemination efforts, where scientific concepts-in our case from structural biology-are explained to a broad audience without any significant prior domain knowledge. In this scenario, emphasis has to be put onto the intuitiveness of the exploration experience. A typical end user might be either a member of the general population or a new biology student.
In addition to the possibilities for extension mentioned by the two experts, our approach also has other limitations that we note here. In particular, our method does not allow viewers to jump rapidly between structures from very different parts of the hierarchical organization. This was, however, a conscious design decision: We wanted to support the task of exploring a hierarchical structure and allow viewers to answer questions about the composition relationship ("How do the parts of this virus fit together?"), rather than facilitate the task of random access to a desired object. An additional full hierarchical map in a separate panel or a window could address this issue for environments featuring large or multiple screens. This additional needed screen space could, however, present a concern in other settings (e. g., immersive science center installation). Alternatively, we could also expand the breadcrumbs panel only on demand (e. g., after pressing a button) into a full tree view, through which the user can select any structure of the model.
Finally, even though we allow users to explore models with a complexity that, up to recently, was impossible to interactively manage, we still only cover a relatively small sub-set of the scale space. Models that, for example, start with macroscopic organisms (e. g., a human being) and contain detail down to the cell chemistry are still impossible to render today and may require us to adjust our hierarchical exploration concept. Moreover, not all multi-scale building blocks are defined with a containment relationship-the DNA, for example, requires other multi-scale exploration strategies [29] we would need to incorporate into our concept.
We set out to solve a problem of navigation under thefrom the point of navigation-previously not considered constraints of multi-scale, multi-instance, hierarchical, and dense 3D models. Re-implementing the method on other models with these characteristics should be straightforward.
In addition, we believe that it will be useful for any dense and hierarchical 3D model even if it does not fulfill the rest of the conditions. In that case, however, adjustments need to be conducted, tailored for the specific need, e. g., using a different smart visibility technique [72] instead of sparsification for models that do not have multiple instances.

CONCLUSION AND FUTURE WORK
In the past, interactive 3D model exploration for visualization and other domains has been possible only either in terms of spatial navigation (most 3D visualization tools support this aspect) or in terms of understanding the hierarchy of multi-scale models (e. g., [46], [54]). Both aspects are essential and many innovative solutions have been presented for them to date. In our work, to the best of our knowledge for the first time, we allow users to navigate both facets of the data in a single, integrated interaction concept. In contrast to existing smart visibility techniques [72] and single-stage hierarchy exploration [61], we support, and put the emphasis on, the interaction for traversing the hierarchical organization directly. Our approach handles the spatial model as faithfully as possible, not treating the encapsulating structures just as layers to be clipped away in order to show the internals.
The definition of what is the object in focus (and what is the context that is to be visually suppressed) is fluid in our method, depending on which structural level is currently relevant to the user. In fact, with HyperLabels the choice to jump between these levels is absolutely in the hands of the user. With this approach we allow users to understand-in particular for applications in biology-how parts are assembled into structural complexes. With our new interactive approach we thus allow viewers to learn both about the 3D structure, the names of the elements, and the structural composition of complex subject matter. We thus see the main application of our approach in education, yet applications are possible wherever multi-scale containment and spatial structure needs to be portrayed simultaneously.
Regarding future research, a logical next step would be to perform a user study with inquiry into the usability of the presented technique. Answering the questions of usability, intuitiveness, and effectiveness in various practical scenarios, however, might be more relevant for an HCI venue.
In addition, the three low-level procedures of our proposed technique can be, in principle, replaced by other implementations, perhaps specific for a certain domainspecific use case. For example, there might be better, more semantically-driven ways to realize anchoring, e. g., along the lines of the HoverCam technique [38]. Furthermore, interactive sparsification, where the visibility settings of the scene is adjusted even upon camera movement in the anchored state, should be investigated. Here, the main challenge is maintaining temporal coherence. Solutions such as Lidal et al. [49] can serve as an inspiration.
Finally, we are considering to explore the concept of procedural HyperLabels where the annotation is not concerned with a structure, but with annotation of a process on which the structure is participating. Once the label is selected, the particular process is initiated, while the process as well as the structure can be viewed at various levels of detail.