• This repository has been archived on 16/May/2019
  • Stars
    star
    123
  • Rank 290,145 (Top 6 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created almost 12 years ago
  • Updated over 8 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

An adaptation of the Leap API for Javascript

LeapJS

LeapJS

LeapJS is a Javascript library that provides the functionality and object structure of the Leap API to assist developers who are working with the Leap Motion in a browser environment.

Including

Include Leap.js for debugging and access to "private" variables:

<script src="Leap.js"></script>

Include Leap.min.js for deployed applications to reduce load times:

<script src="Leap.min.js"></script>

Tutorial

// Create a controller to connect to the Leap Motion
myController = new Leap.Controller("ws://localhost:6437/");

// Create a listener
myListener = new Leap.Listener();

// Listener.onFrame is called each time a frame is received
myListener.onFrame = function(controller){

    var frame = controller.frame();
    var hands = frame.hands();
    var pointables = frame.pointables();
    
    var gestures = frame.gestures();
    
    // Awesome code goes here
}

// Add the listener to the controller
myController.addListener(myListener);

// Enable the screenTap gesture
myController.enableGesture("screenTap", true);

// Listener.onConnect is called when the connection is open
myListener.onConnect = function(controller){
 
    // Calibrate the screen
    calibrate = new Leap.Calibrate(controller);
    calibrate.onComplete = function(screen){
        // Save the screen
        // Or access it later with myController.calibratedScreens()[0]
    }
}

Whats new? Gestures!

  • Gesture.Type
    • "circle"
    • "keyTap"
    • "screenTap"
    • "swipe"
  • CircleGesture : Gesture
  • KeyTapGesture : Gesture
  • ScreenTapGesture : Gesture
  • SwipeGesture : Gesture
  • Controller
    • void enableGesture( string type, Bool enable )
    • Bool isGestureEnabled( string type )
  • Frame
    • GestureList gestures()
    • GestureList gestures( Frame sinceFrame )

Whats new? Calibration!

  • Calibrate
    • Calibrate( Controller controller )
    • virtual void onComplete( Screen screen )
  • Screen
    • Screen()
    • float distanceToPoint( Vector point )
    • { position : Vector, distance : float } intersect( Pointable pointable, Bool normalize )
    • { position : Vector, distance : float } intersect( Vector position, Vector direction, Bool normalize )
    • { position : Vector, distance : float } project( Pointable pointable, Bool normalize )
    • { position : Vector, distance : float } project( Vector position, Bool normalize )
    • Vector normal()
    • void offset()
    • Bool isValid()
    • static Screen invalid()

Where is the API?

The API has been moved to the wiki page