type
(string)This specifies the panorama type. Can be equirectangular
, cubemap
, or
multires
. Defaults to equirectangular
.
title
(string)If set, the value is displayed as the panorama’s title. If no title is desired, don’t set this parameter.
author
(string)If set, the value is displayed as the panorama’s author. If no author is desired, don’t set this parameter.
authorURL
(string)If set, the displayed author text is hyperlinked to this URL. If no author URL
is desired, don’t set this parameter. The author
parameter must also be set
for this parameter to have an effect.
strings
(dictionary)Allows user-facing strings to be changed / translated.
See defaultConfig.strings
definition in pannellum.js
for more details.
basePath
(string)This specifies a base path to load the images from.
autoLoad
(boolean)When set to true
, the panorama will automatically load. When false
, the
user needs to click on the load button to load the panorama. Defaults to
false
.
autoRotate
(number)Setting this parameter causes the panorama to automatically rotate when loaded. The value specifies the rotation speed in degrees per second. Positive is counter-clockwise, and negative is clockwise.
autoRotateInactivityDelay
(number)Sets the delay, in milliseconds, to start automatically rotating the panorama
after user activity ceases. This parameter only has an effect if the
autoRotate
parameter is set. Before starting rotation, the viewer is panned
to the initial pitch.
autoRotateStopDelay
(number)Sets the delay, in milliseconds, to stop automatically rotating the panorama
after it is loaded. This parameter only has an effect if the autoRotate
parameter is set.
orientationOnByDefault
(boolean)If set to true
, device orientation control will be used when the panorama is
loaded, if the device supports it. If false, device orientation control needs
to be activated by pressing a button. Defaults to false
. Note that a secure
HTTPS connection is required for device orientation access in most browsers.
Additionally, this feature does not work in combination with autoLoad: true
in most browsers, since a user interaction is required to prompt for permission.
showZoomCtrl
(boolean)If set to false
, the zoom controls will not be displayed. Defaults to true
.
keyboardZoom
(boolean)If set to false
, zooming with keyboard will be disabled. Defaults to true
.
mouseZoom
(boolean or string)If set to false
, zooming with mouse wheel will be disabled. Defaults to true
.
Can also be set to fullscreenonly
, in which case it is only enabled when the
viewer is fullscreen. Can also be set to ctrl
, in which case the ctrl
key
must be held down to zoom with the mouse wheel (except while the viewer is
fullscreen); when the ctrl
key is required for mouse wheel zooming, the use
of ctrl
/ shift
for zoom control is disabled.
doubleClickZoom
(boolean)If set to false
, the zoom to click location on double click function will be
disabled. Defaults to true
.
draggable
(boolean)If set to false
, mouse and touch dragging is disabled. Defaults to true
.
dragConfirm
(boolean or string)If set to false
, one finger can be used to pan viewer. Defaults to false
.
Can also be set to pitch
, yaw
, or both
. If set to pitch
or both
, two
fingers need to be used to pan vertically (except while the viewer is
fullscreen). If set to yaw
or both
, two fingers need to be used to pan
horizontally (except while the viewer is fullscreen).
friction
(number)Controls the “friction” that slows down the viewer motion after it is dragged and released. Higher values mean the motion stops faster. Should be set (0.0, 1.0]; defaults to 0.15.
disableKeyboardCtrl
(boolean)If set to true
, keyboard controls are disabled. Defaults to false
.
showFullscreenCtrl
(boolean)If set to false
, the fullscreen control will not be displayed. Defaults to
true
. The fullscreen button will only be displayed if the browser supports
the fullscreen API.
showControls
(boolean)If set to false
, no controls are displayed. Defaults to true
.
touchPanSpeedCoeffFactor
(number)Adjusts panning speed from touch inputs. Defaults to 1
.
yaw
(number)Sets the panorama’s starting yaw position in degrees. Defaults to 0
.
pitch
(number)Sets the panorama’s starting pitch position in degrees. Defaults to 0
.
hfov
(number)Sets the panorama’s starting horizontal field of view in degrees. Defaults to
100
.
minYaw
and maxYaw
(number)Sets the minimum / maximum yaw the viewer edge can be at, in degrees.
Defaults to -180
/ 180
, i.e. no limit.
minPitch
and maxPitch
(number)Sets the minimum / maximum pitch the viewer edge can be at, in degrees.
Defaults to undefined
, so the viewer center can reach -90
/ 90
.
minHfov
and maxHfov
(number)Sets the minimum / maximum horizontal field of view, in degrees, that the
viewer can be set to. Defaults to 50
/ 120
. Unless the multiResMinHfov
parameter is set to true
, the minHfov
parameter is ignored for
multires
panoramas.
multiResMinHfov
(boolean)When set to false
, the minHfov
parameter is ignored for multires
panoramas; an automatically calculated minimum horizontal field of view is used
instead. Defaults to false
.
compass
(boolean)If true
, a compass is displayed. Normally defaults to false
; defaults to
true
if heading information is present in Photo Sphere XMP metadata.
northOffset
(number)Set the offset, in degrees, of the center of the panorama from North. As this
affects the compass, it only has an effect if compass
is set to true
.
preview
(string)Specifies a URL for a preview image to display before the panorama is loaded.
previewTitle
(string)Specifies the title to be displayed while the load button is displayed.
previewAuthor
(string)Specifies the author to be displayed while the load button is displayed.
horizonPitch
and horizonRoll
(number)Specifies pitch / roll of image horizon, in degrees (for correcting non-leveled panoramas).
animationTimingFunction
(function) [API only]This specifies a timing function to be used for animating movements such as
when the lookAt
method is called. The default timing function is
easeInOutQuad
. If a custom function is specified, it should take a number
[0, 1] as its only argument and return a number [0, 1].
escapeHTML
(boolean)When true, HTML is escaped from configuration strings to help mitigate possible
DOM XSS attacks. This is always true
when using the standalone viewer since
the configuration is provided via the URL; it defaults to false
but can be
set to true
when using the API.
targetBlank
(boolean)When true
, target="_blank"
is set on most hyperlinks to open them in new
tabs. This is always true
when using the standalone viewer since said viewer
is often used in an <iframe>
, where it doesn’t make sense to open the link in
the same place. Defaults to false
.
crossOrigin
(string)This specifies the type of CORS request used and can be set to either
anonymous
or use-credentials
. Defaults to anonymous
.
hotSpots
(object)This specifies a dictionary of hot spots that can be links to other scenes, information, or external links. Each array element has the following properties.
pitch
(number)Specifies the pitch portion of the hot spot’s location, in degrees.
yaw
(number)Specifies the yaw portion of the hot spot’s location, in degrees.
type
(string)Specifies the type of the hot spot. Can be scene
for scene links or info
for information hot spots. A tour configuration file is required for scene
hot spots.
text
(string)This specifies the text that is displayed when the user hovers over the hot spot.
URL
(string)If specified for an info
hot spot, the hot spot links to the specified URL.
Not applicable for scene
hot spots.
attributes
(dict)Specifies URL’s link attributes. If not set, the target
attribute is set to
_blank
, to open link in new tab to avoid opening in viewer frame / page.
sceneId
(string)Specifies the ID of the scene to link to for scene
hot spots. Not applicable
for info
hot spots.
targetPitch
(number)Specifies the pitch of the target scene, in degrees. Can also be set to same
,
which uses the current pitch of the current scene as the initial pitch of the
target scene.
targetYaw
(number)Specifies the yaw of the target scene, in degrees. Can also be set to same
or
sameAzimuth
. These settings use the current yaw of the current scene as the
initial yaw of the target scene; same
uses the current yaw directly, while
sameAzimuth
takes into account the northOffset
values of both scenes to
maintain the same direction with regard to north.
targetHfov
(number)Specifies the HFOV of the target scene, in degrees. Can also be set to same
,
which uses the current HFOV of the current scene as the initial HFOV of the
target scene.
id
(string)Specifies hot spot ID, for use with API’s removeHotSpot
function.
cssClass
(string)If specified, string is used as the CSS class for the hot spot instead of the default CSS classes.
createTooltipFunc
(function) and createTooltipArgs
(object)If createTooltipFunc
is specified, this function is used to create the hot
spot tooltip DOM instead of the default function. The contents of
createTooltipArgs
are passed to the function as arguments.
clickHandlerFunc
(function) and clickHandlerArgs
(object)If clickHandlerFunc
is specified, this function is added as an event handler
for the hot spot’s click
, pointerup
, and touchend
events. The event object
and the contents of clickHandlerArgs
are passed to the function as arguments.
draggable
If specified, the hotspot can moved using the mouse or by touch.
dragHandlerFunc
(function) and dragHandlerArgs
(object)If dragHandlerFunc
is specified, this function is added as an event handler
when dragging of the hotspot starts and ends. The event object and the contents of
dragHandlerArgs
are passed to the function as arguments. Possible types of the
event object are: mousedown
, pointerdown
, touchend
, pointerup
, pointerleave
,
mouseup
, and mouseleave
.
scale
(boolean or number)When true
, the hot spot is scaled to match changes in the field of view,
relative to the initial field of view. Note that this does not account for
changes in local image scale that occur due to distortions within the viewport.
Defaults to false
.
scaleFactor
(number)Applies a fixed scaling to the default hot spot size. Can be combined with scale
.
hotSpotDebug
(boolean)When true
, the mouse pointer’s pitch and yaw are logged to the console when
the mouse button is clicked. Defaults to false
.
sceneFadeDuration
(number)Specifies the fade duration, in milliseconds, when transitioning between scenes. Not defined by default. Only applicable for tours. Only works with WebGL renderer.
capturedKeyNumbers
(array)Specifies the key numbers that are captured in key events. Defaults to the standard keys that are used by the viewer.
backgroundColor
([number, number, number])Specifies an array containing RGB values [0, 1] that sets the background color
for areas where no image data is available. Defaults to [0, 0, 0]
(black).
For partial equirectangular
panoramas this applies to areas past the edges of
the defined rectangle. For multires
and cubemap
(including fallback) panoramas
this applies to areas corresponding to missing tiles or faces. If set to null
,
the background is not cleared.
avoidShowingBackground
(boolean)If set to true
, prevent displaying out-of-range areas of a partial panorama
by constraining the yaw and the field-of-view. Even at the corners and edges
of the canvas only areas actually belonging to the image
(i.e., within [minYaw
, maxYaw
] and [minPitch
, maxPitch
]) are shown,
thus setting the backgroundColor
option is not needed if this option is set.
Defaults to false
. The minPitch
and maxPitch
parameters must be defined
if this option is enabled.
equirectangular
specific optionspanorama
(string or HTMLImageElement or ImageData or ImageBitmap)If a string is passed, it sets the URL to the equirectangular panorama image.
This is relative to basePath
if it is set, else it is relative to the location of
pannellum.htm
. An absolute URL can also be used.
Alternatively, an already loaded image can be passed.
haov
(number)Sets the panorama’s horizontal angle of view, in degrees. Defaults to 360
.
This is used if the equirectangular image does not cover a full 360 degrees in
the horizontal.
vaov
(number)Sets the panorama’s vertical angle of view, in degrees. Defaults to 180
. This
is used if the equirectangular image does not cover a full 180 degrees in the
vertical.
vOffset
(number)Sets the vertical offset of the center of the equirectangular image from the
horizon, in degrees. Defaults to 0
. This is used if vaov
is less than 180
and the equirectangular image is not cropped symmetrically.
ignoreGPanoXMP
(boolean)If set to true
, any embedded Photo Sphere XMP data will be ignored; else,
said data will override any existing settings. Defaults to false
.
cubemap
specific optionscubeMap
This is an array of URLs for the six cube faces in the order front, right,
back, left, up, down. These are relative to basePath
if it is set, else they
are relative to the location of pannellum.htm
. Absolute URLs can also be
used. Partial cubemap images may be specified by giving null
instead of a URL.
multires
specific optionsmultiRes
This contains information about the multiresolution panorama in sub-keys.
basePath
(string)This is the base path of the URLs for the multiresolution tiles. It is relative
to the regular basePath
option if it is defined, else it is relative to the
location of pannellum.htm
. An absolute URL can also be used.
path
(string)This is a format string for the location of the multiresolution tiles, relative
to multiRes.basePath
, which is relative to basePath
. Format parameters are
%l
for the zoom level, %s
for the cube face, %x
for the x index, and
%y
for the y index. For each tile, .extension
is appended.
fallbackPath
(string)This is a format string for the location of the fallback tiles for the CSS 3D
transform-based renderer if the WebGL renderer is not supported, relative
to multiRes.basePath
, which is relative to basePath
. The only format
parameter is %s
, for the cube face. For each face, .extension
is appended.
extension
(string)Specifies the tiles’ file extension. Do not include the .
.
tileResolution
(number)This specifies the size in pixels of each image tile.
maxLevel
(number)This specifies the maximum zoom level.
cubeResolution
(number)This specifies the size in pixels of the full resolution cube faces the image tiles were created from.
shtHash
(string)Specifies the spherical-harmonic-transform-based preview hash. This is rendered instead of the background color before the base set of cube faces are loaded.
equirectangularThumbnail
(string or HTMLImageElement or ImageData or ImageBitmap)Specifies a equirectangular preview thumbnail to be rendered instead of the
background color or SHT hash before the base set of cube faces are loaded. This
image can either be specified as a Base64-encoded string or as an object that
can be directly uploaded to a WebGL texture, e.g., ImageData
, ImageBitmap
,
HTMLImageElement
, HTMLCanvasElement
objects. If a Base64-encoded string is
used, the image size should be kept small, since it needs to be loaded with the
configuration parameters.
missingTiles
(string)This specifies tiles that are missing and should not be loaded. A compact encoding is used for these data.
Currently, only equirectangular dynamic content is supported.
dynamic
(boolean)The panorama source is considered dynamic when this is set to true
. Defaults
to false
. This should be set to true
for video.
dynamicUpdate
(boolean)For dynamic content, viewer will start automatically updating when set to
true
. Defaults to false
. If the updates are controlled via the setUpdate
method, as with the Video.js plugin, this should be set to false
.
A tour configuration file contains two top level properties, default
and
scenes
. The default
property contains options that are used for each scene,
but options specified for individual scenes override these options. The
default
property is required to have a firstScene
property that contains
the scene ID for the first scene to be displayed. The scenes
property
contains a dictionary of scenes, specified by scene IDs. The values assigned to
these IDs are specific to each scene.