Multi-Resolution
Stream gigapixel panoramas progressively with Pannellum's tiled multires format
Overview
Multi-resolution mode streams a panorama as a pyramid of tiles, the way slippy maps work: the viewer fetches only the tiles and zoom levels it needs for the current view. That makes gigapixel panoramas load in milliseconds instead of megabytes.
Zoom in — the picture sharpens as higher-resolution tiles stream in.
# File: docs/multires/multires_example.py
from dash_pannellum import DashPannellum
component = DashPannellum(
id="multires-demo",
multiRes={
"basePath": "https://pannellum.org/images/multires/library",
"path": "/%l/%s%y_%x",
"fallbackPath": "/fallback/%s",
"extension": "jpg",
"tileResolution": 512,
"maxLevel": 6,
"cubeResolution": 8432,
},
autoLoad=True,
compass=True,
width="100%",
height="450px",
)
:defaultExpanded: false :withExpandedButton: true
Configuration
multiRes = {
"basePath": "https://example.com/my-pano", # prefix for every tile URL
"path": "/%l/%s%y_%x", # tile URL pattern
"fallbackPath": "/fallback/%s", # cube faces for fallback renderer
"extension": "jpg",
"tileResolution": 512,
"maxLevel": 6,
"cubeResolution": 8432,
}
The placeholders in path: %l zoom level, %s cube face (f, b, l, r, u, d), %x/%y tile coordinates.
Generating the tiles
Pannellum ships a Python tool that converts an equirectangular image into this tile structure:
git clone https://github.com/mpetroff/pannellum.git
python pannellum/utils/multires/generate.py my-panorama.jpg -o my-pano
The generator prints the matching multiRes configuration when it finishes — paste it straight into the Dash prop. See the Pannellum multires documentation for details.
Source: /components/multires
Note for AI agents: This is the static, prerendered view of an interactive Dash application served because we detected a non-JS user agent. Full prose docs:
- /components/multires/llms.txt — LLM-friendly documentation
- /sitemap.xml
- /robots.txt