2016年3月3日 星期四

02162411_劉永健_Week02

體感互動 Week 02 上課內容
1. 加退選後名單/座位表確認, blog設定
2. 確認 Leap Motion 的 Processing 範例
3. Leap Motion Orion 影片
4. 帶大家看同學們上週blog寫的/想要做的作品,並進行示範教學

部落格連線出問題,改PROXY









位址:proxy.mcu.edu.tw 連接阜:3128



滑鼠劃線程式

void setup(){
  size(640,480);
}

void draw(){
line(mouseX,mouseY,pmouseX,pmouseY);
}



改背景色,劃線顏色




void setup(){
  size(640,480);
  background(0);
}

void draw(){
  stroke(63,191,48);
line(mouseX,mouseY,pmouseX,pmouseY);
}




PVector []pt= new PVector[10];
void setup(){
  size(640,480,P3D);
  for(int i=0;i<10;i++) pt[i]= new PVector(0,0,0);
  
  
}

void draw(){
  background(0);
  stroke(#72FF3B);
for(int i=9;i>0;i--) {pt[i].x=pt[i-1].x;pt[i].y=pt[i-1].y;}
  pt[0].x=mouseX;
  pt[0].y=mouseY;
  
for(int i=1;i<10;i++)  
line(pt[i].x,pt[i].y,pt[i].z,pt[i-1].x,pt[i-1].y,pt[i-1].z);
}

結合leap motion 





import de.voidplus.leapmotion.*;
LeapMotion leap;
PVector []pt= new PVector[10];
void setup(){
  size(640,480,P3D);
  for(int i=0;i<10;i++) pt[i]= new PVector(0,0,0);
  leap=new LeapMotion(this);
  
}

void draw(){
  background(0);
  stroke(#72FF3B);
for(int i=9;i>0;i--) {pt[i].x=pt[i-1].x;pt[i].y=pt[i-1].y;}
for(Hand hand : leap.getHands()){
  for(Finger finger: hand.getFingers()){
    switch(finger.getType()){
      case 1:
      PVector now =finger.getPosition();
  pt[0].x=now.x;
  pt[0].y=now.y;
  break;
    }
  }
}
  
for(int i=1;i<10;i++)  
line(pt[i].x,pt[i].y,pt[i].z,pt[i-1].x,pt[i-1].y,pt[i-1].z);
}


leap motion 五指操作




import de.voidplus.leapmotion.*;
LeapMotion leap;
PVector [][]pt= new PVector[5][100];
void setup(){
  size(640,480,P3D);
  for(int f=0;f<5;f++){
    for(int i=0;i<100;i++) pt[f][i]= new PVector(0,0,0);
  }
  leap=new LeapMotion(this);
  colorMode(HSB,100);
}

void draw(){
  background(0);

  for(int f=0;f<5;f++){
      for(int i=99;i>0;i--) {pt[f][i].x=pt[f][i-1].x;pt[f][i].y=pt[f][i-1].y;}
  }
  for(Hand hand : leap.getHands()){
      for(Finger finger: hand.getFingers()){
      int f=finger.getType();
      PVector now =finger.getPosition();
  pt[f][0].x=now.x;
  pt[f][0].y=now.y;
    }
  }



  for(int f=0;f<5;f++){
    stroke(f*20,100,100);
    for(int i=1;i<100;i++)  
    line(pt[f][i].x,pt[f][i].y,pt[f][i].z,pt[f][i-1].x,pt[f][i-1].y,pt[f][i-1].z);
  }
}




沒有留言:

張貼留言