trots / vtour Goto Github PK
View Code? Open in Web Editor NEWJavaScript cylindrical panorama viewer based on three.js
Home Page: https://trots.github.io/vtour/
License: MIT License
JavaScript cylindrical panorama viewer based on three.js
Home Page: https://trots.github.io/vtour/
License: MIT License
Panorama can contain special spots with a detailed photo. The photo opens above a panorama view and fits the whole window.
The photo spot on the panorama view is presented with an icon. The icon should support two states: normal and hovered. If a user doesn't specify the icon in the config json then it will be rendered as a small blue plane.
Panorama should be able to embed into an html page. Not fullscreen only.
Add support of these keyboard shortcuts:
Left
- turn scene left;Right
- turn scene right;Up
- turn scene up;Down
- turn scene down;+
- zoom scene in;-
- zoom scene out;Esc
- hide the opened photo or reset zoom.Add a possibility to disable keyboard shortcuts through a panorama config .
Add possibility to zoom panorama. Zoom should be applied in the direction of camera view.
Set zoom range experimentally. But it can be customized in the panorama config json.
Reset zoom on panorama image changing.
Browser's tooltips for scene objects should be replaced with our own tooltips implementation. Cons of using standard tooltips of browser (title
attribute):
So, the new implementation of tooltips should eliminate these cons.
For touch screens show tooltips on long time touch.
Provide mobile devices support:
Show a message at the center of view with the following text:
Unable to load a panorama image
Place below the message a button "Reload": a user can try to load image again.
Repository description:
JavaScript cylindrical panorama viewer based on three.js
Provide these chapters in readme:
Add a title text to a photospot. Title can be shown in the scene title box when a photo is opened.
Implement a panorama rotation without OrbitControls.js. This module has problem with updating after manual camera rotation (see #6).
The portal icon should support two states:
When user hover on portal icon the mouse pointer should be changed to pointer
type.
If user doesn't specify the portal icon, then a small red plane should be rendered.
Draw panorama title at the top left angle of screen.
Text color is white. Provide text readability with any background color.
Switch to a panorama image on the scene with special animation. After clicking on the portal the scene starts zoom in the direction of the portal spot. Simultaneously a requested panorama image is loading. When the loading is finished, the scene switches to the loaded panorama image.
Set a scene name as a tooltip of a transition spot.
Set a photo name as a tooltip of a photo spot.
Custom tooltips can be enabled/disabled in config.
Do after #28
Add tooltips for these elements:
Add an exit button. The button can be used for moving to a home page of a site. Place the button at the left side of the title label.
The button visibility can be configured through config file.
Add a vtour library info on a panorama display.
Place text vtour 1.0.0
at the bottom right corner of the display with small font size and white color.
Add full screen support. Go to full screen mode with the right-top button.
Show an "About" dialog on vtour
version label click. Include copyrights of vtour
and three.js
there.
Add a possibility to customize a path to the vtour assets in a config JSON.
Browser's tooltips for scene objects should be replaced with our own tooltips implementation. Cons of using standard tooltips of browser (title
attribute):
So, the new implementation of tooltips should eliminate these cons.
For touch screens show tooltips on long time touch.
Move the sources under namespace VTOUR
Show waiter widget when a panorama image is loading.
Add default stylesheet and icons.
Stylesheet should be a separate file vtour.css
.
Icons should be also presented as files:
portal.png
;photospot.png
.A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.