ofxLeapTouch is an openFrameworks addon to use the Leap Motion as a Touchless-Touch controller. After setting up a mid-air "touch" sensitive area near your screen, ofxLeapTouch interprets interactions in this field like a touch pad and sends basic openFrameworks touch events accordingly. Due to the use of these core events, combining it with touch reactive user interfaces should be straightforward.
Touchless-Touch is NOT the next step/level for interacting with systems (mainly because of the missing haptical feedback) but it has its advantages (like hover/subtle states) and ofxLeapTouch helps exploring ideas in this field more quickly.
- Setup for leap-to-screen mapping (touchless touch area)
- Emits
ofTouchEvents
according to finger/hand interactions - Works with fingers and/or hands (check
enum leapTouchMode
) - Addional events to work with hover/subtle states
- Distance to screen (z-Axis) is interpreted as touch pressure
Small example with debug draw of fingers (red) or hands (blue). Depending on the leap Z position each finger/hand has the state subtle (grey), hovering (transparent) or pressed (non-transparent).
Using ofxLeapTouch in combination with ofxTuioWrapper to send Touchless-Touch interactions as TuioCursors
. For testing you can use the tuioExample as a client as shown below. Only pressed fingers / hands are forwarded.
Controlling ofxTangibleUI basic handles via Touchless-Touch. ofxTangibleHandle
is listening to touch events by default - no direct connection needed.
-
ofxLeapTouch is built upon top of ofxLeapMotion. Please follow the install instructions there and run the basic example before you continue.
-
To get a copy of the repository you can download the source from http://github.com/ixds/ofxLeapTouch or, alternatively, you can clone git:
git clone git://github.com/ixds/ofxLeapTouch.git
-
The addon should be located at
openFrameworks/addons/ofxLeapTouch/
.
- ofxLeapMotion
- ofxGui (part of the oF core)
- optional: ofxTuioWrapper (example-leapToTuio)
- optional: ofxTangibleUI (example-touchlessUI)