Transcript Processing

Processing
PDE
 Processing
Develop Environment : 개발 툴
 Download



http://processing.org/download/
JDK 설치되어 있어야 함
Windows, Linux, Mac 지원
 기본

사용법
첨부된 pdf의 Ch.1, 2 참조
기본
 setup


/ draw
실행시 한 번만 호출되는 setup 함수에서 기본
설정 등을 수행
draw 함수는 매번 반복 수행되는 함수로 main
함수처럼 사용 가능
 C나
Java의 main 함수와 다르게 반복 호출됨
 size


기본 화면 size를 설정해야함
Parameter는 width, height
 Variables,

Functions, Objects, Arrays
변수 선언/할당, 함수, 클래스, 배열 등은 기본
Java 문법과 동일
 Key



도형 등을 그리는 함수들과 여러 예약어들이
존재하고 있으나 종류가 많지는 않음
기본 문법이 Java와 유사하기 때문에 기술적인
문제점도 많지 않을 것으로 판단됨
가장 중요한 부분
 어떻게
표현할 것이냐
 어떻게 표현할 것인지를 수식이나 알고리즘으로
도출하는 것이 중요
기본 그리기
점

point 함수
 Parameter
: x, y
선

line 함수
 Parameter
: x1, y1, x2, y2
 두 점을 잇는 선을 그림
 삼각형

triangle 함수
 Parameter
: x1, y1, x2, y2, x3, y3
 세 점을 잇는 삼각형을 그림
 사각형

quad 함수
 Parameter
: x1, y1, x2, y2, x3, y3, x4, y4
 네 점을 잇는 사각형을 그림
 직사각형

rect 함수
 Parameter
: x, y, width, height
 한 점을 기준으로 높이와 너비를 가진 직사각형
 원/타원

ellipse 함수
 Parameter
: x, y, width, height
 한 점을 중심으로 가로 지름(width), 세로
지름(height)를 갖는 원/타원을 그림
호

arc 함수
 Parameter
: x, y, width, height, start, stop
 ellipse 함수와 비슷하지만 start, stop으로 시작과
종료지점을 표현 (각각 radian 값)
 3시 방향이 0이고 시계 반대 방향으로 radian이
증가함
 Degree와 radian 변환을 위한 함수 제공
(radians : parameter로 degree, radian을 리턴)
 기타






Drawing order : 나중에 그려지는 개체가
상위에 놓임
smooth 함수 : 선을 부드럽게 그림
strokeWeight : 선 굵기 (parameter는 pixel)
strokeCap, strokeJoin : 각각 선의 시작과 끝
모양, 선이 만나는 모양을 결정하는 함수
background, fill 함수에서의 색상 :
Parameter로 R, G, B 색상값 (0 ~ 255)을
입력받음
Custom Shapes
y) : 임의의 점을 그리고 여러개를 호출시
각 점을 잇는 임의의 도형을 그림
 beginShape()와 endShape()로 custom
shape를 그리는 시작과 끝을 명시해야함
 vertex(x,
Keywords
 제공하는






예약어들
mouseX, mouseY : 현재 마우스 포인터 좌표
pmouseX, pmouseY : 이전의 마우스 좌표
mousePressed : 마우스 버튼이 클릭되었는지
여부를 저장
mouseButton : 클릭된 마우스 버튼을 저장
(LEFT / CENTER / RIGHT)
keyPressed : 키가 눌렸는지 여부를 저장
key : 눌린 키 값을 저장 (keyCode로 비교)
 기타


연산에 사용되는 편리한 함수
dist 함수 : 이전 좌표와 현재 좌표의 거리차를
자동으로 연산
map 함수 : 변화의 범위와 따라 지정된 최대,
최소값 내에서 값을 매핑
예
: map(mouseX, 0, width, 60, 180)
 의미 : 마우스 x 좌표가 0에서 width까지 변화할 때
각 지점을 60 ~ 180 사이의 값으로 매핑

width, height
둘
다 예약어로 화면의 높이와 너비를 저장하고
있음
Motion
 움직임을
위해 필요한 함수 / 기능들
 기본적으로 매번 반복되는 draw 에서 처리



frameRate : 초당 최대 frame 수를 설정하는
함수
random : parameter로 최소, 최대 값을
입력하면 해당 범위 내에서 임의의 값 리턴(float)
millis : 프로그램 시작과 동시에 흘러가는 ms
단위의 count 값 리턴
 Circular


Sine, cosine 값을 연산하기 위한 sin, cos 함수
제공
Parameter는 radian이며 float 타입 리턴
 좌표계



변경
translate : 좌표계 자체를 움직이는 함수이며,
parameter로 움직이는 x, y 방향의 수치 입력
rotate : 좌표계 회전. Parameter로 회전시킬
값을 radian으로 입력함
scale : 좌표계를 확대, 축소. 1이 원래 크기임
Extend

Library 제공

Download



http://processing.org/reference/libraries
Download 후 PDE menu에서 import
3D




사용할 renderer 설정 (P3D, OPENGL, …)
대부분의 함수에서 z 좌표값 parameter로 추가
예 : size(440, 220, OPENGL)
의미 : 440x220 사이즈 화면을 가지며 OpenGL 사용
 Image


Export
현재 보여지는 화면을 image로 저장
saveFrame 함수를 사용
저장할 파일명을 입력
 Parameter에 # (hash mark) 입력시 현재 frame
number로 자동 대체함
 Parameter로

JPG, PNG, TIF 기본 지원