2015年3月16日 星期一

Week04

-------------------------------↓↓畫手↓↓-------------------------------

 import de.voidplus.leapmotion.*;
LeapMotion leap;
void setup(){
  size(600,600,P3D);
  leap = new LeapMotion(this);
}
void draw(){
  background(255);
  for(Hand hand : leap.getHands()){
    hand.draw();
    float angle = hand.getYaw();
    PVector pos = hand.getPosition();
    translate(pos.x, pos.y, pos.z);
    rotateY(-radians(angle));
    fill(128); stroke(0);box(100);
  }
}
-------------------------------↓↓畫地板↓↓-------------------------------

import de.voidplus.leapmotion.*;
LeapMotion leap;
void setup(){
  size(600,600,P3D);
  leap = new LeapMotion(this);
}
float groundDir=0;
void draw(){
  background(255);
  for(int i=-10;i<=10;i++){
    for(int j=-10;j<=10;j++){
      pushMatrix();
      translate(300,300);
      rotateX(radians(70));
      rotateZ(radians(groundDir));
      translate(i*30,j*30);
      box(30);
      popMatrix();
    }
  }
  for(Hand hand : leap.getHands()){
    hand.draw();
    float angle = hand.getYaw();
    PVector pos = hand.getPosition();
    translate(pos.x, pos.y, pos.z);
    rotateY(-radians(angle));
    fill(128); stroke(0);box(100);
    groundDir=-angle;
  }
}
-------------------------------↓↓地板依據手勢旋轉↓↓-------------------------------

import de.voidplus.leapmotion.*;
LeapMotion leap;
void setup(){
  size(600,600,P3D);
  leap = new LeapMotion(this);
}
float nowX=0,nowY=0,nowA=0;
void draw(){
  background(255);
  for(int i=-10;i<=10;i++){
    for(int j=-10;j<=10;j++){
      pushMatrix();
      translate(300,300);
      rotateX(radians(70));
      rotateZ(nowA);
      translate(i*200+nowX,j*200+nowY,0);
      fill(255);box(200);
      popMatrix();
    }
  }
  for(Hand hand : leap.getHands()){
    hand.draw();
    float angle = hand.getYaw();
    PVector pos = hand.getPosition();
    nowA +=radians(-angle/40);
    translate(pos.x, pos.y, pos.z);
    rotateY(-radians(angle));
    fill(128); stroke(0);box(100);
  }
}

沒有留言:

張貼留言