본문 바로가기

프로세싱

프로세싱 함수 챕터 6~7

반응형

1.

PImage img;

img = loadImage("~.jpg");

-> image(img,x,y);

이미지 파일을 화면상에 출력할 때 쓰는 구문 이미지파일은 프로젝트 저장폴더에 존재야하여 한다.

 

2.

Pfont font;

font = loadFont("~.vlw");

textFont(font);

textSize(size);

text("To be or not to be");

 

font를 객체를 설정하고(근데이게객체인지는 잘모르겠다 그런걸로 생각중.. 아니면 추후 수정할것임)

폰트를 불러와서 그 객체에 넣어준 뒤

텍스트의 폰트를 해당 객체로 설정해주고

사이즈를 설정해준 뒤

텍스트를 출력하는 구문

 

3.

String quote = "~";

text(quote, x, y, width, height);

 

설명안해도 아실것이라 믿음.. 그냥 스트링 변수선언해서 출력

 

4.

PShape network;

network = loadShape("~.svg");

shape(network, x, y, width, height);

미리 저장된 모양(?) 파일을 불러와서 화면에 출력

 

5.

println(frameRate);

프레임레이트를 콘솔에 출력

 

6.

setup()

{

frameRate(숫자)

}

화면의 프레임레이트를 설정한다. 최대 60까지해주면됨.. 좋은 모니터는 120정도까지가능하다지만 60hz정도이후에는 차이 인식거의불가

 

7.

r = random(x,y);

x~y사이의 float값을 랜덤으로 불러옴

r = (int) random(x,y);

float값 대신 int값으로 형변환을 하여 r은 x~y사이의 랜

 

덤정수가 배정됨

 

8.

millis()

시스템 시작 후 1/1000 초의 단위의 값

즉 시스템 시작 후 1초가 지나면 millis()는 1000이다.

 

9.

sin(),cos(),tan()

삼각함수 출력

float angle = 0.0;
float offset = 60;
float scalar = 30;
float speed = 0.05;

void setup() {
  size(120, 120);
  smooth();
}

void draw() {
  float x = offset + cos(angle) * scalar;
  float y = offset + sin(angle) * scalar;
  ellipse( x, y, 40, 40);
  angle += speed;
}

예제 7.14의 코드이다.

draw함수를 보면 x,y는 0.05단위로 증가하여 x는 1을 시작으로 좌우로 y는 0을 시작으로 아래위로 움직여서 원의 이동을 볼 수 있다.

여기서 scallar은 원 궤도의 반지름이다. 구면좌표계를 알고있다면 쉽게 뭔뜻인지 이해가능 x = rcos()

 

 

 

10.

translate(x,y);

기준좌표를 이동한다. 이게 응용을 하면 반복된 그림 그리기에 사용가능

만약 원 10개를 그린다고 하면

ellipse(x.y,10,10);에 반복구문으로 x,y값을 바꿔 줘야한다.

하지만 위의 translate(x,y) 메소드를 이용한다면

원점을 이동시키는 것이기 때문에 똑같은 효과를 볼 수 있다.

 

11.

pushMatrix();

translate로 이동되어있는 원점 설정을 저장

popMatrix();

pushMatrix로 저장되어있는 원점 설정을 불러온다.

 

12.

rotate(angle);

좌표를 원점기준으로 각도만큼 회전시킨다

 

13.

scale(숫자);

~배의 크기로 출력해준다.

 

반응형