Lensball
| Lensball | |
|---|---|
A cap of the source is wrapped onto the lens , drawn as a movable scope. Here the 60° cap fills all of by an equal-area wrap; the seam is at the back. Dashed lines: where the cap boundary goes. Rings: lens centre and its image . | |
| Kind | Stateful local representation with an explicit transition rule |
| Source space | (here , radius 2) |
| Lens space | (here , radius 1); usually the sphere , optionally the solid ball in volumetric variants |
| Lens state | frame , centre |
| View map | (declared for the spherical case) |
| Transition rule | ; equal-angle or equal-arc |
| Tiers | lensball · spherical lensball · discrete lensball |
| Key limits | invariance of domain · cut locus · holonomy (area/) |
| Parent category | Interactive visualization lens (Tominski et al., 2017) |
| Term and formalisation | this wiki, 2026 (see positioning) |
| heidict | lensball (mirrored below) |
| Prototypes | ~/ht/lensball-viz (numpy/matplotlib · Canvas/JS)
|
A lensball is a stateful local representation of a source space on a lens space , usually a sphere, together with an explicit transition rule that is part of the model: interaction with the lens state induces navigation through the represented neighborhoods, slices, or projections of . It aims to preserve selected local structure and temporal continuity rather than requiring one globally faithful low-dimensional embedding. The visible representation is therefore local and state-dependent: at any instant the lensball displays a selected neighborhood, slice, or projection of ; motion of the lensball changes that selection.
The central idea is not to require one static low-dimensional picture to preserve an entire high-dimensional space. Instead, a lensball aims for:
- local geometric fidelity — the currently viewed region should preserve the geometry judged important;
- exact identity where possible — a displayed datum can retain an exact link to its original representation in ;
- temporal stability — nearby lensball states should produce nearby visual states rather than arbitrary rearrangements; and
- navigability — rotations or other motions of induce controlled motion through the family of views of .
In this sense, a lensball is closer to a movable chart, lens, or scope than to an ordinary global dimensionality-reduction map. These aims are shared with the interactive-lens literature; what is specific to lensball is stated under Positioning.
Figure M1. (Realised: infobox animation and Figure 2 above.) The basic lensball picture: a large source space , a currently selected region , and a smaller spherical view . Rotating moves through , while points displayed on retain links to their original points in .
Illustrations
Both animations are the offline numpy/matplotlib prototype (spitball, 2026-09-14). Panels are, left to right: the source with the current chart outlined and the lens frame drawn (red up, blue right); the half-display view on through ; and the full-display view that uses all of minus one seam point.

Figure 1. , , . Segments: navigation along ; zoom stretching a shorter arc over ; navigation while ramps from 1 to 2 (equal-angle rule, no permutation between frames). The full-arc panel maps the same arc onto the whole circle with the seam at .

Figure 2. , , . Segments: navigation (the 60° cap slides over ); zoom with cap at constant display extent (dots spread: sparsity is information); parallel transport around an octant loop, after which the centre and cap are identical but the frame is rotated by exactly 90° = enclosed area / (Gauss–Bonnet). The full-display panels use the equal-area profile , shown from the front and from the back with the seam centred; the same points cover all of at one quarter of the packed density, and the sample lattice shows spokes near the seam because the map's anisotropy is unbounded there although its area distortion is exactly zero.
In software
Open the interactive embedding lensball — a frozen wiki-article embedding with drag navigation, exact record lookup, a local distortion readout, and a clickable global preview minimap.
As a tool, a lensball is an interactive viewer for a large or high-dimensional dataset that shows one local view at a time on a small movable display, usually a rendered sphere, and recomputes that view as the user moves the lens. In practice it is almost always the discrete lensball: displayed markers keep exact references to their source records, and only the geometry of the view is approximate.
Oslo world model
Video: Oslo through a lensball (44 seconds; 28 September 2026; not published here). The local Oslo world model supplies actual terrain triangles, building walls and roofs, and the Sinsen Panorama mesh. The tour moves from Sinsen toward Torshov, inspects the raised geometry, expands the source neighborhood over central Oslo and the fjord, and turns the display to expose the reserved back seam. The recording uses neighborhood labels and omits street addresses, home markers and coordinate readouts. Short on-screen titles introduce each step; an optional English caption track adds brief explanations. The video is silent.
The reference surface uses Figure 2’s equal-area profile, with . Each source vertex’s ground position is mapped onto the lens sphere; its elevation extends radially, with central scale . The existing perspective model’s curvature/refraction drop is undone before radial elevation. Source orientation follows , with the declared zoom-dependent sensitivity . Display inspection changes only the camera; traversal changes the source chart. This is an elevated three-dimensional chart: equal area applies to the reference surface, not to building volumes or terrain relief.
The implementation retains source coordinates and mesh-triangle identities, while rasterization approximates the nonlinear map with transformed triangles. The region is omitted at the back seam. Distortion grows toward this region; the video does not imply global metric preservation. Game interiors and separate tree and sculpture meshes are not included in this demonstration.
The recording is not published on this wiki. Terrain: © Kartverket (CC BY 4.0); map data: © OpenStreetMap contributors (ODbL). Source and capture script: ~/world-model/view/web/lensball/ and view/tools/record_lensball.py.
Parameters
A concrete implementation is specified by choosing each component of the tuple in §1 of the mathematics section. The choices that matter most during development are:
| Parameter | Role | Typical choice |
|---|---|---|
| Source metric | what "near" means in the data | Euclidean, cosine, geodesic on a kNN graph |
| Lens display | rendered surface | ; occasionally a disk or a solid ball |
| Lens state | what the user moves | centre plus orientation (), or a subspace |
| Visible region | which records are drawn | radius , fixed point count , or slice thickness |
| Zoom | angular magnification | 1 to 10; bound the domain by |
| Sensitivity | how far one gesture moves the lens | equal-angle or equal-arc-length (§4) |
| Layout objective | how visible points are placed | local stress plus temporal penalty, weights (§13) |
| Orientation policy | what "up" means after motion | parallel transport, global reference, or user-controlled (§9) |
| Transition rule | how control input changes | the one part that must be explicit; it is the product, not a detail |
Properties to test for
- Exact round trip. Selecting a marker returns the original record. This is a lookup, not a geometric inverse, and should never fail.
- Local stress. Distances among visible points match the source metric up to a scale, within a tolerance the task sets. Measure only on the visible set.
- Temporal stability. A small motion of the lens moves each shared marker by a small amount. Two views can each be good and still form a bad tool if the second permutes the first.
- Warm start. Each frame's layout is initialised from the previous frame. Cold recomputation is the usual cause of failed temporal stability.
- Determinism and path dependence. Decide whether returning to the same centre restores the same view. With parallel transport it does not, by design; state this in the interface.
- Controllability. If the state space is larger than the control space, such as a Grassmannian of slices driven by ball rotation, check that the transition rule actually reaches the states users need (§§10–11).
Numerical notes
- Compute the angle in the logarithm map with of the tangential and radial components rather than , which loses precision near the centre and the antipode.
- Use the series for when is small; the closed form is 0/0 at the centre.
- Keep the visible region strictly inside the cut locus: never draw points near , where the map is undefined and neighbours are torn apart.
- Store orientation as a unit quaternion or re-orthonormalise after each update; accumulated products drift out of .
- Choose the lens radius from the error budget: distortion grows like for a curvature scale , so halving the radius quarters the error and roughly quadruples the number of views needed to cover a surface (§8).
- For thick slices, tune against sample density; an exact slice of a finite dataset is empty.
- Do not expect a global fix. The Johnson–Lindenstrauss lower bound (§12) says a 2D or 3D display cannot be guaranteed to preserve all pairwise distances of an arbitrary growing dataset; budget for local fidelity only.
When it is useful
- Datasets too large or too high-dimensional for a single trustworthy embedding, where global projections rearrange under small changes.
- Tasks that are local by nature: inspecting a neighbourhood, following a trajectory, comparing near neighbours, auditing a cluster boundary.
- Situations where exact retrieval of the underlying record matters more than the overall picture.
- Exploring spaces that are themselves spherical or have a natural rotation structure, where the lens state and the data share a geometry.
Caveats
- There is no global overview; users can lose their place. Pair the lens with a coarse map or a breadcrumb of visited states.
- Seams, frame singularities, and holonomy are real and will be reported as bugs. They are consequences of the geometry (§§7 and 9); choose an orientation policy and document it.
- A small sphere has little area. Overplotting arrives quickly; the clutter term and the point-count cap exist for this reason.
- Distortion outside the lens radius is unbounded. Do not read distances between a visible point and one that has just scrolled off.
- Recomputing a layout per frame is expensive. Incremental updates and neighbourhood caching are the difference between a demo and a tool.
- A lensball is not a replacement for global dimensionality reduction. It answers a different question: what does this region look like, and how do I get to the next one.
In mathematics
1. Terminology and notation
For , let
denote the -dimensional sphere of radius . Its intrinsic dimension is , even though it sits in the -dimensional Euclidean space .
Thus:
- is a circle;
- is the familiar spherical surface in three-dimensional space;
- is the three-dimensional hypersphere in .
The closed solid -ball is
Unless explicitly stated otherwise, lensball refers to a spherical display surface , not a solid ball . The solid-ball version is discussed in §6.3.
Let:
- be the source space;
- be the lens space or display space;
- when is a manifold;
- ;
- be the lens state;
- be the region currently exposed by the lens;
- be the view map;
- be an inverse, partial inverse, pseudoinverse, or retrieval map when one exists;
- be a transition rule determining how user motion changes .
A lensball may therefore be represented abstractly by a tuple
Not every application needs every component. In particular, for finite data, may simply be an exact dictionary lookup from a displayed point to its original datum.
Three tiers are used below. Lensball is the general mechanism above. A spherical lensball is the canonical geometric case in which is a sphere and the lens state is a rotation or a choice of subspace (§§2–4 and 10 of the mathematics section); the rotation-group, exponential-map, holonomy, and Grassmannian results are properties of this realization, not of the general notion. A discrete lensball is the finite-data specialization of the discrete lensball definition (§20 of the mathematics section).
1.1 Geometric inverse versus semantic inverse
Two notions of inversion should be distinguished.
A geometric inverse satisfies
because itself is injective on its domain.
A semantic inverse may instead store the identity of every displayed datum. Even if a dimensionality-reduction map is not mathematically invertible, selecting a rendered marker can still retrieve the exact original vector, object, or record.
This distinction is important in discrete visualization:
A computer can preserve exactly which datum a point represents while necessarily distorting distances, angles, topology, or density in its visual placement.
2. The spherical Lensball: motivating case
The motivating example uses
Thus is a sphere of radius and is a sphere of radius .
Their surface areas are
Hence has one quarter of the physical surface area of .
There is a trivial global similarity
which is a bijection and scales every intrinsic distance by . Therefore the lensball idea is not needed merely to identify the two spheres. The nontrivial idea begins when is treated as a movable local scope: its full display capacity is devoted to a proper region of , and rotation of the scope changes which region is displayed.
2.1 Equal-area local scope
Suppose one wants one lensball view to represent a spherical cap of whose area equals the entire area of , namely .
A cap of angular radius on a sphere of radius has area
For ,
so
Thus an equal-area interpretation of the motivating example corresponds to a cap of angular radius on .
This is only one possible scale convention. A lensball can instead choose its visible region according to point count, density, geodesic radius, information content, nearest-neighbor structure, or adaptive error.
Figure M2. (Realised: Figure 2 above, segment 1.) Sphere with a spherical cap highlighted. The cap has area , equal to the entire area of . The cap is expanded into the lensball view.
3. Local spherical coordinates via the exponential map
A natural smooth implementation uses the Riemannian exponential and logarithm maps.
Let be the current lens center. Its tangent space is
For , with , the exponential map on the sphere is
with the limiting value .
Conversely, for , define
Then
where the formula is understood by continuity at , giving . Its norm is the geodesic distance:
The antipodal point is the cut locus of on a sphere: the shortest geodesic from ceases to be unique there, so the logarithm map cannot be made single-valued at that point.
3.1 A local Lensball map between equal-dimensional spheres
Let
Choose a display center and an orthogonal identification of tangent spaces
For an angular magnification factor , define
If lies at angular distance from , its image lies at angular distance from .
On a sufficiently small cap this map is one-to-one and has inverse
The factor plays the role of zoom. When , a small region of is expanded over a larger portion of . The domain must be kept away from the relevant cut loci; for example, one can require
For the special case of two complete spheres of the same dimension and proportional radii, the global radial similarity is exact. The local exponential-map formulation is useful because it generalizes to arbitrary manifolds and to adaptive local magnification.
For the ordinary spherical case , a complete oriented lensball state can be represented by a rotation matrix
If , the current center may be represented as
The matrix contains more information than the center alone. A point on has two degrees of freedom, whereas a full oriented local frame has three. The third degree of freedom determines the lensball's local notion of "up."
Suppose a user rotates by an incremental rotation
where is the Lie algebra of skew-symmetric matrices. A basic sensitivity rule is
where is a navigation sensitivity.
- : equal angular response;
- : fine motion;
- : accelerated traversal.
For and , equal angular motion and equal arc-length motion are different:
Equal angular motion uses the same . Equal physical arc length requires
For the motivating radii , , equal arc-length sensitivity gives
5. Dimensional cases
The qualitative behavior of a lensball depends strongly on the relation between
| Case | Interpretation | Generic consequence |
|---|---|---|
| local chart or local reparameterization | locally invertible maps are possible | |
| projection, slice, quotient, or fibered view | some geometric information must be hidden | |
| embedding into a higher-dimensional view | extra display dimensions are available | |
| finite/discrete | exact identities plus approximate geometry | point identity may be lossless even when geometry is not |
5.1 Equal dimension:
If and are smooth manifolds of the same dimension, then sufficiently small neighborhoods are locally equivalent as smooth manifolds. In particular, after choosing charts,
Thus a lensball can be locally one-to-one and smoothly invertible.
If and carry Riemannian metrics, their local metrics need not agree exactly, but their distortion can be made arbitrarily small on sufficiently small regions after choosing an appropriate first-order scaling.
This is the mathematical basis for the claim that local geometric error can be made arbitrarily small in the equal-dimensional smooth case.
5.2 Source dimension larger than lens dimension:
When , a lensball cannot continuously and injectively represent an open -dimensional neighborhood inside an -dimensional manifold. Something must be discarded, merged, or selected.
The principal options are:
Projection
All points are mapped to a lower-dimensional representation,
Different source points may share the same image.
Slice
The lensball displays an -dimensional subspace or submanifold of the source.
For example, if
and is an -dimensional linear subspace, then
This gives an exact spherical -dimensional slice.
Thick slice
For discrete data, exact intersection with a slice is often empty or sparse. One therefore selects points near a slice,
and maps those points onto .
Quotient or fibered representation
A map
groups source points into fibers
A single lensball position then represents an entire hidden set in .
The classical Hopf fibration
is a canonical mathematical example: every point of corresponds to a circle in . It is not a generic data-visualization method, but it is an instructive model of how a lower-dimensional spherical representation can systematically encode higher-dimensional structure through fibers.
Figure M3 (proposed). Dimension mismatch. Several points or a continuous fiber in high-dimensional map to one location on . A second panel shows a moving slice through a higher-dimensional sphere.
5.3 Source dimension smaller than lens dimension:
When , local embeddings are possible and the lensball has excess geometric capacity.
The simplest example is the equatorial embedding
For a general smooth -manifold, the Whitney embedding theorem guarantees a smooth embedding into . Consequently, sufficiently high-dimensional lensball spaces can globally embed arbitrary smooth manifolds, although a particular manifold may embed in substantially lower dimension.
Extra dimensions can also encode non-geometric variables such as uncertainty, class, time, density, velocity, or provenance.
6. Two-dimensional and three-dimensional Lensballs
The word "dimension" can be misleading because a visible sphere in ordinary three-dimensional graphics is intrinsically two-dimensional.
6.1 One-dimensional Lensball
The simplest toy model is
A local segment of a curve can be wrapped around a circle. Moving the circle's state along the source curve gives a one-dimensional analogue of lensball navigation.
This case is useful for illustrating the difference between a closed display and a local interval. A whole circle cannot be homeomorphic to an interval without a cut, overlap, or identification.
6.2 Two-dimensional Lensball
The familiar visual form is
It is a two-dimensional surface rendered naturally in three-dimensional computer graphics. This is the main practical lensball for human visual inspection.
A two-dimensional lensball can display:
- a local surface patch of a two-dimensional manifold;
- a projection of arbitrary-dimensional data;
- a two-dimensional slice of a higher-dimensional manifold;
- or a finite set of high-dimensional data points embedded on a sphere.
6.3 Three-dimensional Lensball
An intrinsically three-dimensional spherical lensball is
It cannot be viewed directly in ordinary three-dimensional space without another projection or slicing step.
A different practical object is the volumetric lensball
a solid three-dimensional ball. It can use the interior as display space. This increases display dimension from two to three but introduces familiar problems of occlusion and interior navigation.
Thus a "3D ball" in graphics and a "3-sphere" in topology are distinct objects:
7. Topological perspective
Lensball has a natural interpretation in terms of charts, atlases, embeddings, and quotient maps.
7.1 Lensball as a moving chart
An -dimensional manifold is locally modeled on . A chart is a homeomorphism
A collection of compatible charts covering a manifold is an atlas.
An equal-dimensional lensball is essentially a stateful chart whose target is another manifold rather than necessarily . Moving the lensball changes the chart domain . The collection of all reachable lens states behaves like a navigable atlas.
This viewpoint explains why local representation is easy while global representation may require multiple charts, cuts, or overlaps.
7.2 Why a whole sphere is not a local disk
A proper local patch of an -manifold is ordinarily disk-like. The sphere is not homeomorphic to the disk .
One proof uses homology:
Homeomorphisms preserve homology groups, so no homeomorphism
can exist for .
Therefore, if the entire lensball surface is required to correspond continuously and bijectively to one disk-like local patch of , some seam, removed point, overlap, or identification is unavoidable.
This is not a practical problem if the lensball is treated as a display shell rather than as a literal topological chart: one can reserve a seam, use overlapping charts, or keep the singular region outside the active visual field.
7.3 Invariance of domain and invariance of dimension
Brouwer's invariance of domain theorem states that if
is open and
is continuous and injective, then is open and is a homeomorphism onto its image.
It also gives a short obstruction when .
Suppose there were a continuous injective map
Embed into as the coordinate plane
Then
would be continuous and injective. Invariance of domain would imply that is open in . But it lies entirely in an -dimensional coordinate plane, which has empty interior in . Contradiction.
Hence an open -dimensional region cannot be continuously injected into an -dimensional display when .
This is one of the fundamental limits of a lower-dimensional lensball.
7.4 Borsuk–Ulam theorem
The Borsuk–Ulam theorem states that every continuous map
identifies at least one antipodal pair:
for some .
Invariance of domain (§7.3) already shows that a continuous global flattening of into an -dimensional Euclidean display cannot be injective; Borsuk–Ulam sharpens this by locating a specific collision, an antipodal pair. It does not forbid a sphere-to-sphere bijection ; the obstruction is specific to a flat -dimensional target.
7.5 Hairy ball theorem and lens orientation
The hairy ball theorem says that an even-dimensional sphere , in particular , has no continuous nowhere-zero tangent vector field.
For an lensball this has a practical interpretation: one cannot choose a globally smooth, non-singular "up direction" that depends only on the center point of the lens.
There are two standard solutions:
- accept coordinate singularities, as with longitude/latitude; or
- include orientation as part of the lens state.
The second solution motivates representing the state by , not merely by the center .
8. Differential geometry: local fidelity and curvature
8.1 Arbitrarily small local distortion
Let and be smooth -dimensional Riemannian manifolds, and choose points
Choose a linear isometry, or a scaled isometry,
Using exponential maps, define locally
For sufficiently small neighborhoods this is a diffeomorphism.
In Riemannian normal coordinates centered at a point, the metric has expansion
where is the Riemann curvature tensor.
The first deviation from the Euclidean metric is therefore quadratic in distance. Consequently, on a region of characteristic diameter and curvature scale ,
For a sphere of radius ,
giving the heuristic scaling
Thus, in the equal-dimensional smooth setting, shrinking the lens region can make local metric distortion arbitrarily small.
Proof sketch
At the center point, normal coordinates make the metric exactly Euclidean:
and the first derivatives of the metric vanish:
The metric therefore converges uniformly to its tangent-space metric as the neighborhood radius tends to zero. The same holds in . Composing the two normal-coordinate systems through yields a map whose differential approaches an isometry uniformly as the domain shrinks. Hence, for every , a sufficiently small neighborhood is -bi-Lipschitz after the chosen scale normalization.
This statement is local. It does not imply that global curvature or topology can be made irrelevant while viewing the entire manifold at once.
8.2 Cost of reducing local error
For a two-dimensional surface, if linear patch size is reduced by a factor , its area is reduced roughly by . Since curvature error is also second order,
one expects, very roughly,
to cover a fixed two-dimensional surface at uniformly comparable local accuracy.
In intrinsic dimensions, a patch volume scales like . If distortion remains quadratic in ,
This is a geometric form of the curse of dimensionality: arbitrary local accuracy remains possible, but the number of neighborhoods needed for uniform coverage may grow rapidly with dimension.
9. Parallel transport, holonomy, and geometric memory
Suppose the lensball carries an oriented tangent frame and is moved along a path on a curved source manifold.
A natural way to preserve orientation is parallel transport: move the frame while keeping it as parallel as the Levi-Civita connection allows.
On a curved manifold, parallel transport around a closed loop need not return the frame to its original orientation. This effect is called holonomy.
For a sphere of radius , parallel transport around a simple loop enclosing region produces, up to orientation and modulo , a rotation whose angle is
This is closely related to the Gauss–Bonnet theorem.
Lensball therefore has a natural path-dependent phenomenon:
moving the lens around a closed route can return it to the same center with a different orientation.
This is not numerical error; it is a genuine consequence of curvature.
It also creates a design choice. A lensball implementation may:
- preserve orientation by parallel transport and expose holonomy;
- continuously correct orientation against a global reference, introducing singularities or gauge choices;
- or treat orientation as an independent user-controlled state.
Figure M4. (Realised: Figure 2 above, segment 3.) A lensball frame parallel-transported around a triangular loop on . The center returns to its starting point but the local frame is rotated. The enclosed area determines the holonomy angle.
10. Higher-dimensional spherical sources and Grassmannians
For high-dimensional spheres, a particularly clean lensball model uses moving great subspheres.
Let
To display an -sphere, choose an -dimensional linear subspace
Then
Thus the lensball state can be taken to be the choice of .
The set of all -dimensional linear subspaces of is the Grassmannian
Its dimension is
This gives an immediate quantitative description of the space of possible spherical slices.
10.1 Example: viewed through
Take
A great slice is determined by a 3-dimensional subspace of :
The state space has dimension
By contrast, the visible ball has rotation group
which has dimension
Thus instantaneous rotation of the visible ball supplies only three control degrees of freedom, while the family of possible slices has six dimensions.
This does not imply that the full slice space is unreachable. It means that a transition rule must determine how low-dimensional controls accumulate over time to move through the larger state space.
Figure M5 (proposed). An lensball controlling a moving 3-plane through . Each plane cuts in a visible . The sequence of planes traces a path in .
11. Control-theoretic perspective
When the lens state lies on a manifold , user input can be modeled as a control system
where:
- are control signals derived from lensball motion;
- are vector fields on the lens-state space.
This formulation is useful when the number of instantaneous controls is smaller than
A familiar analogy is a car: it has fewer instantaneous control directions than the dimension of its configuration space, yet sequences of steering and forward/backward motion can reach positions that are not instantaneously accessible.
The relevant mathematical principle is the Chow–Rashevskii theorem. Informally, if the control vector fields and their iterated Lie brackets span the full tangent space,
then the system is controllable: any state can be reached from any other by admissible controls. The hypotheses are that the are smooth on a connected manifold, the Lie algebra they generate spans the tangent space at every point, and the controls are unconstrained in sign (Agrachev and Sachkov, ch. 5).
For the canonical oriented rotational realisation, the rotational state manifold is and the natural controls are the left-invariant fields , , where is the skew matrix of the axis . With all three controls the system is trivially controllable. With only two, say tilts about and , the bracket supplies the missing direction, so the condition holds and every orientation is reachable by sequences of two tilts. This is why a two-axis input such as a mouse drag can steer a three-dimensional frame, provided the input is actually mapped to two signed body-fixed rotations or another bracket-generating pair; an arbitrary two-axis mapping is not automatically controllable. When the transition rule lifts motion to a larger state space (a Grassmannian, §10), controllability must be re-checked for the lifted fields; it is not inherited.
This makes the transition rule more than a sensitivity constant. It can itself be a geometric navigation mechanism.
12. Discrete and computational Lensballs
For a finite dataset
the computational problem differs sharply from the continuous topological problem.
At state , let
be the currently visible subset, and let
assign display positions.
12.1 Exact identity is easy
If the renderer has enough distinguishable markers, can be injective on a finite visible set. Each rendered marker can store an identifier , so selecting the marker recovers exactly.
Thus the round trip
can be computationally exact even if the geometric placement is highly distorted.
For a finite set, this eliminates the topological obstruction to identity preservation. It does not eliminate geometric obstruction.
12.2 Global metric preservation remains limited
Suppose contains points and the goal is to preserve every pairwise Euclidean distance within relative error .
The Johnson–Lindenstrauss lemma states, roughly, that one can embed the points into
with
while preserving all pairwise distances up to a factor .
The bound is also tight in the worst case: for some point sets any map, linear or not, with distortion needs (Larsen and Nelson, 2017). Hence a fixed two-dimensional or three-dimensional display cannot, for arbitrary growing datasets, preserve all high-dimensional pairwise geometry with arbitrarily small error.
Discrete computation makes exact point identity possible; it does not repeal dimensional geometry.
Lensball addresses this by changing the objective from global simultaneous fidelity to local, adaptive, and temporal fidelity.
13. Fidelity objectives for data visualization
A practical lensball needs a definition of what should be preserved.
For visible points , let
be the relevant source-space distance and
the display distance.
One possible local geometric stress is
where:
- is a selected neighborhood graph;
- emphasizes important pairs;
- is a local display scale.
To prevent points from jumping arbitrarily between consecutive views, define a temporal penalty
A simple lensball objective is then
where further terms may penalize visual collisions or reward a task-specific property.
This formulation separates two requirements that are often conflated:
- spatial fidelity: the current picture is geometrically useful;
- temporal fidelity: motion through pictures is cognitively continuous.
For interactive high-dimensional visualization, temporal fidelity may be as important as the static embedding quality.
This form is standard. The local stress on a neighbourhood graph belongs to the local-MDS and neighbourhood-preservation family, for which Venna and Kaski (2006) give the standard trustworthiness–continuity framing that guides the choice of and ; the temporal penalty is the same quadratic consecutive-layout regularisation pattern used by Xu, Kliger and Hero (2012). What lensball fixes is only that both terms are evaluated along the trajectory induced by the transition rule, so trades off against the declared navigation law rather than against an arbitrary sequence of snapshots.
Figure M6 (proposed). The same local point set in two consecutive lensball states. A stable transition moves shared points slightly; an unstable recomputation preserves similar static stress but permutes the visual arrangement dramatically.
14. Lensball as projection, slice, and neighborhood
Three lensball modes should be distinguished.
Projection Lensball
A large or complete source set is mapped into :
The state changes the projection itself. Classical projection tours fit naturally into this category.
Slice Lensball
The state selects a lower-dimensional subset
and maps only that slice into .
For spherical sources, Grassmannian slices provide a canonical construction.
Neighborhood Lensball
The state selects a center or anchor and a local neighborhood
The visible geometry is then recomputed locally.
These modes can be combined. For example, a system may select a local neighborhood and then project it onto a state-dependent spherical slice.
15. Other mathematical perspectives
15.1 Fiber bundles
When , the inverse image
of a lensball point may have positive dimension. If the fibers vary continuously and locally have a common structure, the map may resemble or form a fiber bundle.
This gives a precise language for "hidden dimensions behind a displayed point."
The Hopf fibration of §5.2 is the standard spherical example.
15.2 Lie groups and homogeneous spaces
Rotations of are described by
The sphere itself can be written as a homogeneous space
This explains the difference between a lens center and a fully oriented lens frame. The center forgets the rotation of the tangent frame.
Similarly, Grassmannians are homogeneous spaces:
in the unoriented real case.
This makes Lie-group integration, exponential maps, and geodesic interpolation natural tools for smooth lensball navigation.
15.3 Gauge viewpoint
Choosing a local orientation or coordinate frame over every point of a manifold is analogous to choosing a gauge. Different frame conventions can represent the same underlying geometric state.
Seams, frame singularities, and holonomy are therefore not merely graphics problems; they are manifestations of the geometry of bundles and connections.
15.4 Information and rate-distortion viewpoint
A low-dimensional visual display has finite perceptual and pixel capacity. From an information-theoretic viewpoint, the lensball chooses which information to preserve at each state.
Instead of demanding a globally sufficient static encoding, lensball can be regarded as a progressive interactive code:
with user motion selecting the next packet of information.
The data itself need not be compressed destructively; only the momentary visual channel is.
15.5 Numerical-analysis viewpoint
An implementation based on local charts resembles adaptive numerical methods:
- decrease lens radius where curvature or data complexity is high;
- increase radius in nearly flat or homogeneous regions;
- refine sampling where local error exceeds tolerance;
- reuse previous solutions to obtain temporal stability.
This suggests adaptive lensball schemes whose visible radius is determined by an error estimator rather than by a fixed angle.
16. Relevant theorems and their Lensball interpretations
| Result | Lensball relevance |
|---|---|
| Local Euclidean structure of manifolds | equal-dimensional neighborhoods admit local coordinates and local inverses |
| Riemannian normal-coordinate expansion | local metric error is second order in neighborhood size |
| Invariance of domain | an open -region cannot be continuously injected into lower dimension |
| Borsuk–Ulam theorem | a continuous flattening must identify an antipodal pair |
| Whitney embedding theorem (1944) | every smooth -manifold embeds in ; a display of dimension always suffices for an injective picture, though not an isometric one |
| Hairy ball theorem | a global non-singular tangent "up" direction on is impossible |
| Gauss–Bonnet theorem / holonomy | transporting a lensball frame around curvature can rotate its orientation |
| Johnson–Lindenstrauss lemma and its lower bound | points admit a -distance-preserving map into dimension ; there exist point sets for which this is necessary for any map, linear or not (Larsen–Nelson), so a fixed low-dimensional lens cannot be guaranteed uniform fidelity on arbitrary large sets, and locality is what buys accuracy back |
| Chow–Rashevskii theorem | low-dimensional controls can navigate a higher-dimensional state manifold if the induced vector fields are bracket-generating; on two tilts suffice (§11) |
No single theorem determines whether a lensball visualization is useful: topology decides whether exact continuous representations are possible, differential geometry quantifies local distortion, metric embedding theory constrains distance preservation, control theory determines reachability, and perception adds constraints none of them see. Lensball is a framework connecting these questions, not a projection theorem.
17. Relation to existing work
Interactive lenses (parent category)
Bier et al.'s Magic Lenses (1993) introduced a movable screen region with an operator that changes how the objects beneath it are shown. Tominski et al. (2017) give the selection, lens-function, join model used under Positioning and a taxonomy of more than fifty lens techniques. Lensball is a member of this family with selection at the data stage and a separate spherical view. Among the systems examined in the 2026-09-14 audit, none was identified in which rotation of a spherical rendered view is itself mapped by an explicit transition law to navigation through a source-state manifold.
Movable-lens re-embedding
TopicLens (Kim et al., 2017) drags a rectangular lens over a global document embedding and recomputes a topic model and a local t-SNE for the captured documents, anchoring local topic centroids to their global positions. General Projective Maps (Lehmann and Theisel, 2016) define a data-dependent magic lens that re-solves the projection's free parameters by least squares so that points inside the lens spread apart. Focus+Context Exploration of Hierarchical Embeddings (Höllt et al., 2019) formalises eight focus and context operations as set equations on a tree-shaped state and extends HSNE so that mixed levels of detail embed together. TopicLens and General Projective Maps recompute or re-optimise in response to a movable planar region and stabilise against the global layout; Höllt et al. instead define explicit focus and context state operations and recompute hierarchical embeddings, warm-starting from prior positions. All three are planar. Lensball takes from them the local-recompute pattern, the identity link from displayed point to source datum, and (from Höllt et al.) the idea that interaction operations belong to the model; it adds a continuous geometric transition law and a continuity objective evaluated along the trajectory that law induces.
Spherical embedding and spherical displays
Nonmetric spherical MDS (Cox and Cox, 1991); Visualizing Information on a Sphere (Gross, Sprenger and Finger, 1997); the Spherical Similarity Explorer (Zhang et al., 2016), which already discusses moving the point of interest while preserving the analyst's mental map; DOSNES (Lu, Corander and Yang, 2019), which shows that doubly stochastic similarities embed naturally on spheres; and scPhere (Ding and Regev, 2021). These establish spherical targets. Lensball uses the sphere as a moving local chart, not as a global target.
Focus+context on spheres and hemispheres
Generalized fisheye views (Furnas, 1986); MagicSphere (Cignoni, Montani and Scopigno, 1994), a movable spherical volume of interest in 3D; the Magic Eye View (Kreuseler and Schumann, 1999; 2002), a hierarchy projected onto a hemisphere with a movable focus; iSphere (Du et al., 2017), a graph mapped to a Riemann sphere for focus+context; and Sphere (Benko, Wilson and Balakrishnan, 2008), a multi-touch spherical display whose rotation is the navigation. These are interactive spherical representations already. The distinction is the source-state coupling: in a lensball the sphere is a chart of a source manifold, and its rotation is lifted by a declared law to a state that may be larger than the rotation group.
Tours, slices, and local projection
Asimov's grand tour (1985) and its guided descendants (Buja, Cook, Asimov and Hurley, 2005) move through projection planes along geodesics of the Grassmannian; a projection lensball whose state is a subspace is a state-controlled relative. Lifting rotation to a data graph or a general manifold is a different problem, closer to path planning than to tours. HyperSlice (van Wijk and van Liere, 1993) explores a high-dimensional function through interactive lower-dimensional slices, the ancestor of the slice lensball. Charting a Manifold (Brand, 2002) and LAMP (Joia et al., 2011) supply the local patch and local affine machinery that a neighbourhood lensball can use.
Local fidelity and temporal regularisation
Local MDS (Venna and Kaski, 2006) makes the trustworthiness–continuity trade-off explicit for local proximities; regularised dynamic layout (Xu, Kliger and Hero, 2012) adds a temporal movement penalty to a static layout objective. §13 is these two objectives evaluated along a lensball trajectory.
18. Design principles
A computational lensball can be summarized by the following principles.
Preserve identity exactly when possible
The visual position is a view, not the source datum. Every rendered point should retain its original identifier and coordinates.
Preserve local geometry according to the task
There is no universal best metric. Depending on the application, a lensball may prioritize:
- geodesic distance;
- Euclidean distance;
- nearest-neighbor rank;
- angles;
- cluster membership;
- density;
- topology;
- class separation;
- uncertainty.
Make the transition rule explicit
Movement of the lensball is itself part of the mathematical model. A system should specify how control input changes:
- lens center;
- lens orientation;
- selected subspace;
- zoom;
- slice thickness;
- embedding parameters.
Optimize continuity over time
Two individually good embeddings can form a bad interactive system if one abruptly rearranges the other.
The trajectory
is therefore a primary object, not an incidental animation between static plots.
If a low-dimensional display cannot represent all of faithfully at once, lensball does not attempt to defeat the theorem. It changes the interface:
19. Open and settled questions
Most questions a lensball raises are specialisations of named problems. The list below says which, and what is still open once the lensball data (source metric, transition rule, task) are fixed.
- Local map. Choosing to minimise local distortion is spherical or local multidimensional scaling once a distortion functional and neighbourhood graph are declared (Cox and Cox; Venna and Kaski). Open: which functional matches which task, and whether the equal-area full-display profile of §2.1 is optimal for any natural criterion.
- Navigation law and controllability. On two tilt controls are bracket-generating (§11), so reachability is settled. For Grassmannian projection states this connects to projection-tour navigation (Buja, Cook, Asimov and Hurley); for data graphs or general manifolds it is a path-planning problem. In either case no universal optimum exists because the criterion (coverage, shortest path, information gain, predictability) is task-dependent. Open: intuitiveness of a given lift, an empirical question.
- Frame transport. A globally smooth "up" field on is impossible (hairy ball), so the choice is between parallel transport of the tangent frame (the directly applicable construction; the rotation-minimising frames of computer graphics are the analogous minimum-twist device), a global reference with seams, or orientation carried as extra state. Holonomy is then determined by Gauss–Bonnet (§9). Settled mathematically; the design choice and its perceptual cost are open.
- Adaptive scale. Choosing the lens radius from curvature, sample density, or embedding error is adaptive-neighbourhood or bandwidth selection. Open: a scale rule that is stable under the transition rule, so that zoom does not fight navigation.
- Discrete guarantees. For finite data, uniform pairwise fidelity in a fixed low dimension is impossible in the worst case (Larsen–Nelson lower bound, §12.2). Tracking births and deaths of visible topological features along a trajectory is zigzag persistence. Open: rank-order or neighbourhood guarantees that hold within a moving lens of bounded size, as a function of lens radius and local intrinsic dimension.
- Perceptual invariants. Which quantities must stay stable across a trajectory for an observer to keep a reliable mental model. Genuinely open and empirical. Among the works reviewed in §17, no study was identified that isolates which invariants across successive re-embedded lens states determine mental-map stability.
20. Discrete Lensball
For a finite dataset, the definition in the lead can be strengthened:
Discrete lensball. A discrete lensball is a lensball in which displayed points retain exact references to their original data objects; geometric distortion affects the view but need not alter the stored data or point identity.
Positioning
Lensball is a synthesis and a name, not a new theorem or a new dimensionality-reduction algorithm. It does not claim new dimensionality reduction, new lens mathematics, new temporal regularisation, or new geometric control theory.
In plain terms: interactive lenses are a well-studied family of tools in which a movable region selects part of a picture and shows it differently (Bier et al., 1993; Tominski et al., 2017). A lensball is one of them. Its lens selects part of the data (a neighbourhood, slice, or projection of ) rather than part of a picture, and the result is drawn on a separate spherical view. In the vocabulary of Tominski et al., the selection occurs at the data stage and the lens representation is rendered as a separate view.
The proposed contribution is a particular combination, not any single ingredient:
- the lens state evolves by an explicit geometric, continuous law (the transition rule), declared as part of the model;
- temporal fidelity is evaluated along the trajectory that this law induces from the user's motion, not between arbitrary snapshots;
- rotating the displayed sphere is mapped by that law to navigation through the source's neighbourhoods, slices, or projections, so the sphere's own geometry constrains navigation: the point opposite the lens centre is a seam (cut locus), and a round trip on a curved source can bring the view back rotated (holonomy).
Each ingredient has precedents: explicit state-changing operations (Höllt et al., 2019), temporal penalties on layouts (Xu, Kliger and Hero, 2012), interactive spherical displays (Benko, Wilson and Balakrishnan, 2008; iSphere). The audit of 2026-09-14 did not identify their exact combination in the systems it reviewed. Lensball is not claimed to be the first movable-lens re-embedding interface (TopicLens; General Projective Maps), the first spherical dimensionality reduction (Cox and Cox, 1991), the first spherical information display (Gross, Sprenger and Finger, 1997), or the first focus+context sphere (Magic Eye View; iSphere). See §17.
References
- D. Asimov, "The Grand Tour: A Tool for Viewing Multidimensional Data," SIAM Journal on Scientific and Statistical Computing 6(1), 128–143 (1985). DOI: 10.1137/0906011.
- M. Brand, "Charting a Manifold," Advances in Neural Information Processing Systems 15 (2002), 961–968. NeurIPS paper.
- P. Joia, F. V. Paulovich, D. Coimbra, J. A. Cuminato, and L. G. Nonato, "Local Affine Multidimensional Projection," IEEE Transactions on Visualization and Computer Graphics 17(12), 2563–2571 (2011). DOI: 10.1109/TVCG.2011.220.
- J. Ding and A. Regev, "Deep generative model embedding of single-cell RNA-Seq profiles on hyperspheres and hyperbolic spaces," Nature Communications 12, 2554 (2021). DOI: 10.1038/s41467-021-22851-4.
- J. M. Lee, Introduction to Riemannian Manifolds, 2nd ed., Graduate Texts in Mathematics 176, Springer (2018). DOI: 10.1007/978-3-319-91755-9.
- H. Whitney, "The Self-Intersections of a Smooth n-Manifold in 2n-Space," Annals of Mathematics 45(2), 220–246 (1944). DOI: 10.2307/1969265. Source of the embedding theorem; the 1936 paper "Differentiable Manifolds" gives the weaker result.
- J. Matoušek, Using the Borsuk–Ulam Theorem: Lectures on Topological Methods in Combinatorics and Geometry, Springer (2003). DOI: 10.1007/978-3-540-76649-0.
- W. B. Johnson and J. Lindenstrauss, "Extensions of Lipschitz mappings into a Hilbert space," Contemporary Mathematics 26, 189–206 (1984). DOI: 10.1090/conm/026/737400.
- A. Hatcher, Algebraic Topology, Cambridge University Press (2002). Particularly relevant for homology, fiber bundles, and the Hopf fibration. Author's text.
- A. A. Agrachev and Y. L. Sachkov, Control Theory from the Geometric Viewpoint, Encyclopaedia of Mathematical Sciences 87, Springer (2004). DOI: 10.1007/978-3-662-06404-7.
- K. G. Larsen and J. Nelson, "Optimality of the Johnson–Lindenstrauss Lemma," IEEE FOCS 2017, 633–638. DOI: 10.1109/FOCS.2017.64.
- C. Tominski, S. Gladisch, U. Kister, R. Dachselt, and H. Schumann, "Interactive Lenses for Visualization: An Extended Survey," Computer Graphics Forum 36(6), 173–200 (2017). DOI: 10.1111/cgf.12871.
- E. A. Bier, M. C. Stone, K. Pier, W. Buxton, and T. D. DeRose, "Toolglass and Magic Lenses: The See-Through Interface," SIGGRAPH 1993, 73–80. DOI: 10.1145/166117.166126.
- M. Kim, K. Kang, D. Park, J. Choo, and N. Elmqvist, "TopicLens: Efficient Multi-Level Visual Topic Exploration of Large-Scale Document Collections," IEEE TVCG 23(1), 151–160 (2017). DOI: 10.1109/TVCG.2016.2598445.
- D. J. Lehmann and H. Theisel, "General Projective Maps for Multidimensional Data Projection," Computer Graphics Forum 35(2), 443–453 (2016). DOI: 10.1111/cgf.12845.
- T. Höllt, A. Vilanova, N. Pezzotti, B. Lelieveldt, and H. Hauser, "Focus+Context Exploration of Hierarchical Embeddings," Computer Graphics Forum 38(3), 569–579 (2019). DOI: 10.1111/cgf.13711.
- T. F. Cox and M. A. A. Cox, "Multidimensional scaling on a sphere," Communications in Statistics – Theory and Methods 20(9), 2943–2953 (1991). DOI: 10.1080/03610929108830679.
- M. H. Gross, T. C. Sprenger, and J. Finger, "Visualizing Information on a Sphere," IEEE InfoVis 1997, 11–16. DOI: 10.1109/INFVIS.1997.636759.
- L. Zhang et al., "Spherical Similarity Explorer for Comparative Case Analysis," Electronic Imaging: Visualization and Data Analysis (2016). DOI: 10.2352/ISSN.2470-1173.2016.1.VDA-496.
- Y. Lu, J. Corander, and Z. Yang, "Doubly Stochastic Neighbor Embedding on Spheres," Pattern Recognition Letters 128, 100–106 (2019). DOI: 10.1016/j.patrec.2019.08.026.
- G. W. Furnas, "Generalized Fisheye Views," CHI 1986, 16–23. DOI: 10.1145/22339.22342.
- P. Cignoni, C. Montani, and R. Scopigno, "MagicSphere: an insight tool for 3D data visualization," Computer Graphics Forum 13(3), 317–328 (1994). DOI: 10.1111/1467-8659.1330317.
- M. Kreuseler and H. Schumann, "Information visualization using a new focus+context technique in combination with dynamic clustering of information space," NPIVM 1999, 1–5. DOI: 10.1145/331770.331772. Journal version of the Magic Eye View technique: "A Flexible Approach for Visual Data Mining," IEEE TVCG 8(1), 39–51 (2002).
- H. Benko, A. D. Wilson, and R. Balakrishnan, "Sphere: Multi-Touch Interactions on a Spherical Display," UIST 2008, 77–86. DOI: 10.1145/1449715.1449729.
- F. Du, N. Cao, Y.-R. Lin, P. Xu, and H. Tong, "iSphere: Focus+Context Sphere Visualization for Interactive Large Graph Exploration," CHI 2017, 2916–2927. DOI: 10.1145/3025453.3025628.
- J. J. van Wijk and R. van Liere, "HyperSlice: Visualization of Scalar Functions of Many Variables," IEEE Visualization 1993, 119–125. DOI: 10.1109/VISUAL.1993.398859.
- J. Venna and S. Kaski, "Local multidimensional scaling," Neural Networks 19(6–7), 889–899 (2006). DOI: 10.1016/j.neunet.2006.05.014.
- K. S. Xu, M. Kliger, and A. O. Hero III, "A Regularized Graph Layout Framework for Dynamic Network Visualization," Data Mining and Knowledge Discovery 27, 84–116 (2013). arXiv:1202.6042.
- A. Buja, D. Cook, D. Asimov, and C. Hurley, "Computational Methods for High-Dimensional Rotations in Data Visualization," Handbook of Statistics 24, 391–413 (2005). DOI: 10.1016/S0169-7161(04)24014-7.
Notes on scope
See Positioning: the term names a synthesis whose ingredients are established subjects, and §17 lists the closest prior work.
heidict entry
Lensball — /ˈlɛnz.bɔːl/ · noun · sentiment: neutral.
Inflections
| Form | Value | ||
|---|---|---|---|
| plural | lensballs | possessive | lensball's |
Definitions
- (technical) — A small movable display, usually a sphere, that shows a local view of a much larger source space, together with an explicit rule for how moving the lens changes the view. Turn the ball and the view slides across the source; every displayed point keeps its identity, nothing jumps, and the transition rule is part of the object rather than an afterthought. Three tiers are used: the general mechanism (any lens space, any source), the spherical lensball (lens is a round sphere, state is a rotation), and the discrete lensball (a finite point set with exact identity). A scope, not a map: it gives up one globally faithful picture in exchange for local fidelity and continuity under motion.
- Give me a lensball over the embedding, not another flat scatter plot.
- Rotating the lensball drags the visible cap across the source sphere.
- The seam on a full-sphere lensball is where the cap boundary collapses to a point.
- (general) — A solid glass sphere held in front of a camera so that the scene appears inside it, refracted, inverted and miniaturised. The photography object the HT sense borrows its name and its picture from: a small ball holding a warped image of a bigger scene, which you turn to look elsewhere.
- Every travel photographer seems to carry a lensball now.
Etymology
First recorded: 2026-09-14, the Lensball article on the Hei Canon wiki. Coined by: Hei (the technical sense; the photography sense is a 2010s trade name turned generic).
- lens
- English from the 1690s, from Latin lens (lentil), after the shape of a biconvex piece of glass.
- ball
- Middle English bal, from Old Norse bǫllr; Germanic root shared with balloon and bowl.
Compound of lens + ball. The photography sense is a 2010s trade name for crystal-ball photography that became generic. The technical sense (2026) keeps the object and adds a state: the ball is a display you rotate, and rotating it is navigation.
Usage
Not a dimensionality-reduction map (global, static, one picture for everything) and not only a magic lens (a movable region laid over a picture): a lensball's own rotation is the navigation, and its transition rule is declared. Say "spherical lensball" or "discrete lensball" when the tier matters.
Sources
- Canonical entry: heidict — Lensball
- Source of truth (YAML):
~/ht/heidict/entries/lensball.yaml - Curated by Benedict under heidict editorial doctrine.