2017년 3월 29일 수요일

예제_for 구문, random함수

2) for 구문, random함수를 이용해 다음과 같은 그림을 그려봅시다.



예제_beginShape, endShape,


1)  beginShape, endShape, vertex를 이용해 화살표를 그려봅시다.






학생작품

학생 작품 -drawing, mouseX mouseY, mousePressed























void setup()
{
size(500,500);
background(30);
}

void draw()
{
  noStroke();
  fill(0);
  ellipse(500,570,900,600);
  noStroke();
  fill(255,228,0);
  rect(380,230,60,60);
  stroke(0);
  fill(93);
  rect(419,240,15,15);
  noStroke();
  fill(45,100,60);
  rect(390,260,20,30);
  fill(102,37,0);
  rect(429,199,10,30);
  noStroke();
  fill(152,0,0);
triangle(410,190,380,230,440,230);

smooth();
fill(150);
ellipse(440,190,10,10);
ellipse(440,170,13,15);
ellipse(430,140,20,20);
ellipse(420,110,25,25);
ellipse(410,90,40,30);
ellipse(390,70,60,30);
ellipse(360,50,100,40);

stroke(250);
strokeWeight(4);
line(360,270,360,290);
line(355,280,355,300);
line(360,295,360,315);
line(370,300,370,320);
line(400,300,400,320);
line(410,300,410,320);
line(420,300,420,320);
line(430,300,430,320);
line(440,300,440,320);
line(450,300,450,320);
line(460,295,460,315);
line(470,290,470,310);
line(475,280,475,300);
line(470,265,470,285);
line(460,260,460,280);
line(450,255,450,275);
line(370,265,370,285);
if(mousePressed==true){
stroke(4);
}
fill(0);
strokeWeight(4);
line(360,270,360,290);
line(355,280,355,300);
line(360,295,360,315);
line(370,300,370,320);
line(400,300,400,320);
line(410,300,410,320);
line(420,300,420,320);
line(430,300,430,320);
line(440,300,440,320);
line(450,300,450,320);
line(460,295,460,315);
line(470,290,470,310);
line(475,280,475,300);
line(470,265,470,285);
line(460,260,460,280);
line(450,255,450,275);
line(370,265,370,285);

noStroke();
fill(255,228,0);
ellipse(20,20,2,2);
ellipse(60,60,2,2);
ellipse(80,50,2,2);
ellipse(250,20,2,2);
ellipse(260,80,2,2);
ellipse(180,250,2,2);
ellipse(300,20,2,2);
ellipse(20,450,2,2);
ellipse(200,180,2,2);
ellipse(50,50,1,1);
ellipse(100,100,1,1);
ellipse(50,50,1,1);
ellipse(250,200,1,1);
ellipse(280,210,1,1);
ellipse(180,250,1,1);
ellipse(350,250,1,1);
ellipse(40,300,1,1);
ellipse(350,180,1,1);

fill(255,228,0);
ellipse(50,50,50,50);
fill(30);
ellipse(60,60,50,50);
fill(255,228,0);
ellipse(mouseX,mouseY,1,1);
}

학생작품


학생 작품 예제-random, mouseX, mouseY, keyPressed
[When art meets technology]
P.21
























float r;
float g;
float b;
float a;

float diam;
float x;
float y;

void setup()
{
  size(500,500);
  background(100,200,255);
  smooth();
  noStroke();
}
void draw()
{
  r=(255);
  g=(255);
  b=(255);
  a=random(255);
  diam=random(20);
  x=random(500);
  y=random(500);

  noStroke();
  fill(r,g,b,a);
  ellipse(x,y,diam,diam);

noStroke();
fill(255,255,255);
rect(0,410,500,90);//ground

noStroke();
fill(0);
ellipse(210,270,100,250);//arm1
noStroke();
fill(0);
ellipse(290,270,100,250);//arm2
noStroke();
fill(255,255,255);
ellipse(250,280,150,300);//body
noStroke();
fill(0);
ellipse(250,100,100,100);//head
noStroke();
fill(255,255,0);
ellipse(210,425,50,20);//foot1
noStroke();
fill(255,255,0);
ellipse(290,425,50,20);//foot2
noStroke();
fill(255,255,255);
ellipse(230,90,15,15);//eye1
noStroke();
fill(255,255,255);
ellipse(270,90,15,15);//eye1
noStroke();
fill(0);
ellipse(230,90,12,12);//eye2
noStroke();
fill(0);
ellipse(270,90,12,12);//eye2
noStroke();
fill(255,165,0);
triangle(235,100,265,100,250,110);//mouth

fill(255,255,255);
ellipse(mouseX,mouseY,10,10);

}

void keyPressed(){

noStroke();
fill(0);
ellipse(410,340,90,150);//arm1
noStroke();
fill(0);
ellipse(430,340,90,150);//arm2
noStroke();
fill(255,255,255);
ellipse(420,340,90,150);//body
fill(0);
noStroke();
ellipse(420,250,70,70);//head
noStroke();
fill(255,255,0);
ellipse(390,410,50,20);//foot1
noStroke();
fill(255,255,0);
ellipse(450,410,50,20);//foot2
noStroke();
fill(255,255,255);
ellipse(410,250,13,13);//eye1
noStroke();
fill(255,255,255);
ellipse(430,250,13,13);//eye1
noStroke();
fill(0);
ellipse(410,250,10,10);//eye2
noStroke();
fill(0);
ellipse(430,250,10,10);//eye2

}

아두이노와 프로세싱 연동: 가변저항으로 프로세싱 색상제어

아두이노와 프로세싱을 연동하는 프로젝트로서, 아두이노의 가변저항을 조절하여 프로세싱의 rect의 색상을 조절해봅니다. 과정은 간단합니다.  1. 아두이노보드에 가변저항을 연결합니다. 가변저항의 세 단자에 GND, 5V, 그리고 A0(아날로...