프로세싱 마우스 클릭으로 사각형 만들기



draw안에서 mousePressed를 넣은 스케치 소스

-------------------------------------------------------

void setup(){

  size(480,360);

  background(255);

  noStroke();

  rectMode(RADIUS);    //사각형 그리기 모드RADIUS는 시작점을 중심으로 

                                     가로 세로값이 반지름으로 ...

}


void draw(){

  if(mousePressed){                      // 마우스가 클릭되면

    float a = random(0,255);              // random() 0~254사이의 임의 값 호출

    fill(a,random(0,255),random(0,255));

    rect(mouseX,mouseY,25,25);     //mouseX, mouseY를 중심으로 가로세로 50x50의 크기로 그려짐

  }

}

--------------------------------------------------------


동작 영상






mouse이벤트 스케치 소스

---------------------------------------------------------

void setup(){

  size(480,360);

  background(255);

  noStroke();

  rectMode(RADIUS);

}


void draw(){

}


void mousePressed(){                          // 마우스 이벤트가 일어나면 실행

  float a = random(0,255);

  fill(a,random(0,255),random(0,255));

  rect(mouseX,mouseY,25,25);

}

----------------------------------------------------------



동작영상



프로세싱 레퍼런스 http://processing.org/reference/


mouseDragged()
mouseMoved()
mousePressed()
mousePressed
mouseReleased()


프로세싱 이전 마우스 좌표를 이용한 선그리기

이전 마우스 좌표 pmouseX, pmouseY



소스스케치

-------------------------------------------------------------------------

void setup() {

  size(480, 360);

  background(255);

}


void draw() {

  //background(255);      // 이곳에서 반복적으로 배경색을 채운다면 

//선을 그리는 것이 아닌 점 찍을것임

//마치 마우스에 점이 따라다니는 것처럼 보임.

  stroke(mouseY,mouseX,abs(mouseX-mouseY));     // 선색주기

  strokeWeight(5);                                                   // 선 두께

  line(pmouseX, pmouseY, mouseX, mouseY);          // 이전 마우스좌표에서 현재마우스좌표로선그리기

}


-----------------------------------------------------------------------------


적용영상



darw() 안에 background(255)를 쓸경우 적용영상



프로세싱 레퍼런스 http://processing.org/reference/


pmouseX
pmouseY


마우스를 따라다니는 사각형


소스스케치

-------------------------------------------------------------------------------

void setup() {

  size(480, 320);

}


void draw() {

  background(255);         // 반복적으로 바탕색을 채움 이전 사각형은 지워짐.

  noStroke();

  fill(abs(mouseX-20),abs(mouseY-20),abs(mouseX-mouseY));  

                                   //마우스 위치에 따라 색상값지정

  rect(mouseX, mouseY, 50, 50);   

                                   //마우스 좌표를 시작점으로 가로세로 50x50 픽셀(?)의 사각형

}

-------------------------------------------------------------------------------


동작화면


+ Recent posts