Du kan inte välja fler än 25 ämnen Ämnen måste starta med en bokstav eller siffra, kan innehålla bindestreck ('-') och vara max 35 tecken långa.
 
 
 
 
 
 
Matthew Petroff d02cedcc4e Document that the viewer pans to the initial pitch before starting auto rotation (see #744). 5 år sedan
.github Create FUNDING.yml 5 år sedan
doc Document that the viewer pans to the initial pitch before starting auto rotation (see #744). 5 år sedan
examples Scale down example image for wider support. 8 år sedan
src Document that the viewer pans to the initial pitch before starting auto rotation (see #744). 5 år sedan
tests Reduce maximum allowed test image difference. 5 år sedan
utils Add build to Travis CI configuration. 5 år sedan
.gitignore Add limited test suite. 5 år sedan
.npmignore Add files for NPM. 8 år sedan
.travis.yml Add build to Travis CI configuration. 5 år sedan
COPYING Bump copyright year. 6 år sedan
VERSION Prep for release. 6 år sedan
changelog.md Prep for release. 6 år sedan
package.json Prep for release. 6 år sedan
readme.md Add Travis CI build status to readme. 5 år sedan

readme.md

Pannellum

Build Status

About

Pannellum is a lightweight, free, and open source panorama viewer for the web. Built using HTML5, CSS3, JavaScript, and WebGL, it is plug-in free. It can be deployed easily as a single file, just 15kB gzipped, and then embedded into pages as an <iframe>. A configuration utility is included to generate the required code for embedding. An API is included for more advanced integrations.

How to use

  1. Upload build/pannellum.htm and a full equirectangular panorama to a web server.
    • Due to browser security restrictions, a web server must be used locally as well. With Python 2, one can use python -m SimpleHTTPServer, and with Python 3, one can use python -m http.server, but any other web server will work as well.
  2. Use the included multi-resolution generator (utils/multires/generate.py) or configuration tool (utils/config/configuration.htm).
  3. Insert the generated <iframe> code into a page.

Using generate.py to create multires panoramas

To be able to create multiresolution panoramas, you need to have the nona program installed, which is available as part of Hugin, as well as Python with the Pillow package. Then, run

python generate.py pano_image.jpg

in the utils/multires directory. This will generate all the image tiles and the config.json file in the ./output folder by default. For this to work, nona needs to be on the system path; otherwise, the location of nona can be specified using the -n flag, e.g. python generate.py -n /path/to/nona pano_image.jpg.

Examples

Examples using both the minified version and the version in the src directory are included in the examples directory. Additional examples are available at pannellum.org.

Browser Compatibility

Since Pannellum is built with recent web standards, it requires a modern browser to function.

Full support (with appropriate graphics drivers):

  • Firefox 10+
  • Chrome 15+
  • Safari 8+
  • Internet Explorer 11+
  • Edge

Almost full support (no full screen):

  • Firefox 4+
  • Chrome 9+

Partial support (WebGL support must first be enabled in preferences)

  • Safari 5.1+

No support:

Internet Explorer 10 and previous

Not officially supported:

Mobile / app frameworks are not officially supported. They may work, but they’re not tested and are not the targeted platform.

Translations

All user-facing strings can be changed using the strings configuration parameter. There exists a third-party respository of user-contributed translations that can be used with this configuration option.

Building

The utils folder contains the required build tools, with the exception of Python 3.2+ and Java installations. To build a minified version of Pannellum, run either build.sh or build.bat depending on your platform.

Tests

A limited Selenium-based test suite is located in the tests directory. The tests can be executed by running python3 run_tests.py. Running the tests requires Python 3, the Selenium Python bindings, Firefox, geckodriver, Pillow, and NumPy.

Contributing

Development takes place at github.com/mpetroff/pannellum. Issues should be opened to report bugs or suggest improvements (or ask questions), and pull requests are welcome. When reporting a bug, please try to include a minimum reproducible example (or at least some sort of example). When proposing changes, please try to match the existing code style, e.g., four space indentation and JSHint validation. If your pull request adds an additional configuration parameter, please document it in doc/json-config-parameters.md.

License

Pannellum is distributed under the MIT License. For more information, read the file COPYING or peruse the license online.

In the past, parts of Pannellum were based on three.js r40, which is licensed under the MIT License.

The panoramic image provided with the examples is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.

Credits