Docs and updates
Updated README.md to mention the leap plugin. Removed leap settings from index.html. Better variable naming in leap.js modified: README.md modified: index.html modified: plugin/leap/leap.js
This commit is contained in:
parent
36a4f56f62
commit
1d895bad61
3 changed files with 46 additions and 5 deletions
42
README.md
42
README.md
|
@ -625,6 +625,48 @@ Reveal.initialize({
|
||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Leap Motion
|
||||||
|
The Leap Motion plugin lets you utilize your [Leap Motion](https://www.leapmotion.com/) device to control basic navigation of your presentation. The gestures currently supported are:
|
||||||
|
|
||||||
|
##### 1 hand + 1 finger
|
||||||
|
* Pointer — Point to anything on screen. Move your finger past the device to expand the pointer.
|
||||||
|
|
||||||
|
##### 1 hand + 2 or more fingers
|
||||||
|
|
||||||
|
* Left
|
||||||
|
* Right
|
||||||
|
* Up
|
||||||
|
* down
|
||||||
|
|
||||||
|
Navigate through your slides. See config options to invert movements.
|
||||||
|
|
||||||
|
##### 2 hands
|
||||||
|
* Up
|
||||||
|
|
||||||
|
Toggle the overview mode. Do it a second time to exit the overview.
|
||||||
|
|
||||||
|
#### Config Options
|
||||||
|
You can edit the following options:
|
||||||
|
* naturalSwipe: Defaults to true. Swipe as though you were touching a touch screen. Set to false to invert.
|
||||||
|
* pointerSize: Defaults to 15. The minimum height and width of the pointer.
|
||||||
|
* pointerColor: Defaults to #00aaff. The color of the pointer.
|
||||||
|
* pointerOpacity: Defaults to 0.75. The opacity of the pointer.
|
||||||
|
* gestureDelay: Defaults to 500. How long to delay between gestures in milliseconds.
|
||||||
|
|
||||||
|
Example configuration:
|
||||||
|
```js
|
||||||
|
Reveal.initialize({
|
||||||
|
// other options
|
||||||
|
leap: {
|
||||||
|
naturalSwipe : false, // Invert swipe gestures
|
||||||
|
pointerOpacity : 0.5, // Set pointer opacity to 0.5
|
||||||
|
pointerColor : '#d80000' // Red pointer
|
||||||
|
}
|
||||||
|
|
||||||
|
// Optional libraries used to extend on reveal.js
|
||||||
|
{ src: 'plugin/leap/leap.js', async: true }
|
||||||
|
```
|
||||||
|
|
||||||
## Installation
|
## Installation
|
||||||
|
|
||||||
The **basic setup** is for authoring presentations only. The **full setup** gives you access to all reveal.js features as well as the development tasks needed to make changes to the source.
|
The **basic setup** is for authoring presentations only. The **full setup** gives you access to all reveal.js features as well as the development tasks needed to make changes to the source.
|
||||||
|
|
|
@ -370,8 +370,7 @@ function linkify( selector ) {
|
||||||
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
{ src: 'plugin/markdown/markdown.js', condition: function() { return !!document.querySelector( '[data-markdown]' ); } },
|
||||||
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
{ src: 'plugin/highlight/highlight.js', async: true, callback: function() { hljs.initHighlightingOnLoad(); } },
|
||||||
{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
|
{ src: 'plugin/zoom-js/zoom.js', async: true, condition: function() { return !!document.body.classList; } },
|
||||||
{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } },
|
{ src: 'plugin/notes/notes.js', async: true, condition: function() { return !!document.body.classList; } }
|
||||||
{ src: 'plugin/leap/leap.js', async: true, }
|
|
||||||
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
|
// { src: 'plugin/search/search.js', async: true, condition: function() { return !!document.body.classList; } }
|
||||||
// { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
|
// { src: 'plugin/remotes/remotes.js', async: true, condition: function() { return !!document.body.classList; } }
|
||||||
]
|
]
|
||||||
|
|
|
@ -30,7 +30,7 @@ var b=right.criteria;if(a!==b){if(a>b||a===void 0)return 1;if(a<b||b===void 0)re
|
||||||
lastGesture = 0,
|
lastGesture = 0,
|
||||||
config = {
|
config = {
|
||||||
naturalSwipe : true, // Swipe as if it were a touch screen.
|
naturalSwipe : true, // Swipe as if it were a touch screen.
|
||||||
pointerDefault : 15, // Default height/width of the pointer.
|
pointerSize : 15, // Default height/width of the pointer.
|
||||||
pointerColor : '#00aaff', // Default color of the pointer.
|
pointerColor : '#00aaff', // Default color of the pointer.
|
||||||
pointerOpacity : 0.75, // Default opacity of the pointer.
|
pointerOpacity : 0.75, // Default opacity of the pointer.
|
||||||
gestureDelay : 500 // How long to delay between gestures.
|
gestureDelay : 500 // How long to delay between gestures.
|
||||||
|
@ -60,8 +60,8 @@ var b=right.criteria;if(a!==b){if(a>b||a===void 0)return 1;if(a<b||b===void 0)re
|
||||||
if ( frame.hands.length === 1 && frame.fingers.length === 1 ) {
|
if ( frame.hands.length === 1 && frame.fingers.length === 1 ) {
|
||||||
var size = -2 * frame.hands[0].palmPosition[2];
|
var size = -2 * frame.hands[0].palmPosition[2];
|
||||||
|
|
||||||
if ( size < config.pointerDefault ) {
|
if ( size < config.pointerSize ) {
|
||||||
size = config.pointerDefault
|
size = config.pointerSize
|
||||||
}
|
}
|
||||||
|
|
||||||
pointer.style.bottom =
|
pointer.style.bottom =
|
||||||
|
|
Loading…
Reference in a new issue