๐ŸŽ‡ Simple Dot Torus

BamgasiJMยท2026๋…„ 4์›” 6์ผ

p5.js Art

๋ชฉ๋ก ๋ณด๊ธฐ
65/65
post-thumbnail

๐Ÿ“ p5.js

let ringRadius = 140;
let minorRadius = 75;

let ringStep = 3;
let tubeStep = 3;

let rotY = 0;
let rotSpeed = 0.05;

function setup() {
  createCanvas(800, 600, WEBGL);
  angleMode(DEGREES);
  colorMode(HSB, 360, 100, 100);
  strokeWeight(1.5);
  noFill();
  smooth();
}

function draw() {
  background(0);
  orbitControl(1.5, 1.5);

  rotY = (rotY + rotSpeed) % 360;
  rotateY(rotY);

  let h = rotY;

  beginShape(POINTS);
  for (let ringAngle = 0; ringAngle < 360; ringAngle += ringStep) {
    for (let tubeAngle = 0; tubeAngle < 360; tubeAngle += tubeStep) {
      let x = (ringRadius + minorRadius * cos(tubeAngle)) * cos(ringAngle);
      let y = minorRadius * sin(tubeAngle);
      let z = (ringRadius + minorRadius * cos(tubeAngle)) * sin(ringAngle);

      stroke(h, 100, 100);
      vertex(x, y, z);
    }
  }
  endShape();
}

profile
Coding Art with Blender / oF / Processing / p5.js / nannou

0๊ฐœ์˜ ๋Œ“๊ธ€