p5.js
초보자를 위한 치트 시트!
프로그램 구조
// 프로그램이 시작될때 한번 실행됨
function setup(){
createCanvas(800,600); // 픽셀단위의 가로, 세로 크기
}
// setup이 실행된 이후 반복되서 실행됨
function draw(){
// 렌더링 반복
}
시스템 변수들
windowWidth / windowHeight
// 윈도우의 가로/세로
width / height
// 캔버스의 가로 / 세로
mouseX / mouseY
// 현재의 마우스의 x/y 좌표
그래픽으로 출력되지 않는 피드백
print();
// 브라우저의 콘솔에 출력
// 주석처리를 위해 더블 슬래시를 사용 (프로그램이 무시함)
컬러
fill(120); // 흑백 : 0-255의 범주를 가짐
fill(100,125,255); //r, g, b: 0-255의 범주를 가짐
fill(255, 0, 0, 50); //r, g, b, 알파(투명도)
fill('red'); // 컬러 문자열
fill('#ccc'); // 3-digit의 HEX 코드
fill('#222222'); // 6-digit의 HEX로 채움
color(0, 0, 255); // p5.Color 오브젝트
수학
+ - / * // 기본적인 수학 연산자
random(low,high); // 범위가 있는 난수 생성하기
map(value, in1, in2, out1, out2);
// 어떤 값(value)이 가질수 있는 최소(in1), 최대(in2) 의 범위를 갖는데
// 이를 최소(out1), 최대(out2) 범주로 변환했을때의 값을 계산
2차원 기초도형
line(x1, y1, x2, y2);
ellipse(x, y, width, height);
rect(x, y, width, height);
arc(x, y, width, height, start, stop);
beginShape();
vertex(x1, y1);
vertex(x2, y2);
vertex(x3, y3);
// 버택스를 추가한다.
endShape(CLOSE);
text("string", x, y, boxwidth, boxheight);
-
그리드 시스템
-
line()
-
ellipse()
-
rect()
-
arc()
-
vertex()
속성들
background(color);
// 배경색을 지정
fill(color);
// 채울 색을 지정
noFill();
// 채우기를 비활성화 함
stroke(color);
// 선의 색을 지정
strokeWeight(weight);
// 선의 두꼐를 픽셀단위로 지정
noStroke();
// 선을 비활성화
ellipseMode(MODE);
rectMode(MODE);
// CENTER,CORNER
textSize(pixels);
if/then logic
if(test){
// 조건문의 구조
}
=== // 같은가?
!== // 다른가?
> // 큰가?
< // 작은가?
>= // 크거나 같은가?
<= // 작거나 같은가?