2016年3月3日 星期四

Week02

一開始先學用滑鼠畫圖

在改顏色


程式碼:
PVector [] pt = new PVector[10];
//PVector pt1, pt2, pt3, pt4, pt5, pt6, pt7, pt8, pt9, pt10;
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(#FC007A);
  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);
  }
   

接下來作用感應手畫線
  

程式碼:
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(#FC007A);
  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);
  }
   
  
接下來分手指頭畫線
每隻手指頭都可以畫出不同顏色
程式碼如下:
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); } }

沒有留言:

張貼留言