Skip to content

Instantly share code, notes, and snippets.

@bingomanatee
Created May 20, 2014 18:24
Show Gist options
  • Save bingomanatee/393d79e8eae989f89b01 to your computer and use it in GitHub Desktop.
Save bingomanatee/393d79e8eae989f89b01 to your computer and use it in GitHub Desktop.
lamous
/* globals define */
define(function(require, exports, module) {
'use strict';
// import dependencies
var Engine = require('famous/core/Engine');
var Modifier = require('famous/core/Modifier');
var Transform = require('famous/core/Transform');
var ImageSurface = require('famous/surfaces/ImageSurface');
// create the main context
var mainContext = Engine.createContext();
// your app here
var logo = new ImageSurface({
size: [200, 200],
content: '/content/images/famous_logo.png',
classes: ['backfaceVisibility']
});
var initialTime = Date.now();
var frontFinger;
var centerSpinModifier = new Modifier({
origin: [0.5, 0.5],
transform : function() {
return frontFinger ? Transform.rotateY(frontFinger.stabilizedTipPosition[0]/100) : Transform.rotateY(.002 * (Date.now() - initialTime));
}
});
mainContext.add(centerSpinModifier).add(logo);
function frontFinger(fingers, frontFinger){
for (var i = 0; i < fingers.length; ++i){
if (!frontFinger) {
frontFinger = fingers[i];
} else {
var finger = fingers[i];
if (finger.stabilizedTipPosition &&
finger.stabilizedTipPosition[2] > frontFinger.stabilizedTipPosition[2]) {
frontFinger = finger;
}
}
}
return frontFinger;
}
Leap.loop( function(frame){
if (!(frame.valid && frame.hands.length)){
return;
}
debugger;
frontFinger = null;
for (var i = 0; i < frame.hands.length; ++i){
var hand = frame.hands[i];
frontFinger = frontFinger(hand.fingers, frontFinger);
}
if (frontFinger){
console.log('frontFinger stp: ', frontFinger.stabilizedTipPosition[2]);
}
});
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment