Merge pull request #554 from gneatgeek/leapmotion-plugin

Leapmotion plugin
This commit is contained in:
Hakim El Hattab 2013-08-08 10:34:22 -07:00
commit 8c1923b4a3
5 changed files with 209 additions and 1 deletions

View File

@ -625,6 +625,50 @@ 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 to 2 fingers
* Pointer — Point to anything on screen. Move your finger past the device to expand the pointer.
##### 1 hand + 3 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:
* autoCenter: Defaults to true. Center the pointer based on where you put your finger into the leap motions detection field.
* gestureDelay: Defaults to 500. How long to delay between gestures in milliseconds.
* naturalSwipe: Defaults to true. Swipe as though you were touching a touch screen. Set to false to invert.
* pointerColor: Defaults to #00aaff. The color of the pointer.
* pointerOpacity: Defaults to 0.7. The opacity of the pointer.
* pointerSize: Defaults to 15. The minimum height and width of the pointer.
* pointerTolerance: Defaults to 120. Bigger = slower pointer.
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.

View File

@ -1605,3 +1605,12 @@ body {
} }
/*********************************************
* LEAP PLUGIN
*********************************************/
#leap {
position: absolute;
z-index: 50;
visibility: hidden;
}

2
css/reveal.min.css vendored

File diff suppressed because one or more lines are too long

View File

@ -371,6 +371,7 @@ function linkify( selector ) {
{ 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; } }
] ]

154
plugin/leap/leap.js Normal file

File diff suppressed because one or more lines are too long