p5.js rotate(회전), push(오브젝트 작성), pop(오브젝트 완성), beginShape(형태 만들기), endShape(형태 만들기 끝내기), polygon형에 대해서

1630 단어 캔버스

p5.js rotate(), push(), pop(), beginShape(), endShape(), polygon형에 대해서



p5.js의 공식 사이트를 보고 그려 보았습니다.
공식 사이트
이번에는 왜 그렇게 쓴지 불명한 곳이 다수 있었습니다.
어째서 그 쓰는 방법이 되었는가, 누군가 가르쳐 주실 수 있습니까?

즉시 써 보았습니다.


function setup() {
    createCanvas(720, 400); // canvasのサイズ
}

function draw() {
    background(102); // 背景色

    push(); // オブジェクト作成
    translate(width * 0.2, height * 0.5); // 移動(x軸, y軸)
    rotate(frameCount / 200.0); // 回転(角度)
    polygon(0, 0, 82, 3); // 関数
    pop(); // オブジェクト完成

    push(); // オブジェクト作成
    translate(width * 0.5, height * 0.5); // 移動(x軸, y軸)
    rotate(frameCount / 50.0); // 回転(角度)
    polygon(0, 0, 80, 20); // 関数
    pop(); // オブジェクト完成

    push(); // オブジェクト作成
    translate(width * 0.8, height * 0.5); // 移動(x軸, y軸);
    rotate(frameCount / -100.0); // 回転(角度)
    polygon(0, 0, 70, 7); // 関数
    pop(); // オブジェクト完成
}

function polygon(x, y, radius, npoints) {
    var angle = TWO_PI / npoints;
    beginShape(); // 形を作る
    for (var a = 0; a < TWO_PI; a += angle) { // TWO_PIは円の円周率。なんで繰り返しているのか不明
        var sx = x + cos(a) * radius; // 不明
        var sy = y + sin(a) * radius; // 不明
        vertex(sx, sy); // 不明
    }
    endShape(CLOSE); // 形を作り終える
}

코멘트 아웃은 거동을 확인하고 썼습니다.
잘못되면 알려주세요. .

완성은 이런 느낌





각 객체가 회전합니다.

좋은 웹페이지 즐겨찾기