私は、this videoで起こっていることをHTMLキャンバスで模倣したコードを書こうとしています。p5.jsを使用してパス上のオブジェクトを移動する
私のコードは、ページがロードされるかリフレッシュされるたびに、2つの円の半径がランダムに生成される点が異なります。私は "惑星"がそれぞれのサークルの円周に沿って同じ速度で移動する必要があります。
私はキャンバスに描画するためにp5.jsを使用しています。 p5.jsにはパスに応じてオブジェクトを描画するものがありますか?私の場合は円のパスですか?
私は参考文献を見て、ベクトルに出くわしましたが、彼らが何をしているのかよくわかりません。これまで
マイコード:最後の行と
var w = window.innerWidth;
var h = window.innerHeight;
var r1, r1;
var d;
var x1, x2, y1, y2;
var angle = Math.PI/4;
function setup() {
// canvas setup
createCanvas(w, h);
background(255);
angleMode(RADIANS);
// randomly generated radiuses
r1 = Math.floor(Math.random() * (h/2-300)) + 300;
r2 = Math.floor(Math.random() * (200-100)) + 100;
// drawing the two ellipses
ellipseMode(CENTER);
noFill();
ellipse(w/2, h/2, r1*2, r1*2);
ellipse(w/2, h/2, r2*2, r2*2);
}
function draw() {
// points on the circles
x1 = (r1 * (Math.cos(angle))) + (w/2);
y1 = (h/2) - (r1 * (Math.sin(angle)));
x2 = (r2 * (Math.cos(angle))) + (w/2);
y2 = (h/2) - (r2 * (Math.sin(angle)));
// drawing two circles at those points
ellipseMode(CENTER);
noStroke();
fill('rgb(140, 140, 140)');
ellipse(x1, y1, 20, 20);
ellipse(x2, y2, 20, 20);
// randomly generated color for the line
var r = random(0, 255);
var g = random(0, 255);
var b = random(0, 255);
stroke(r, g, b);
strokeWeight(1);
// drawing the line that connects the two points
line(x1, y1, x2, y2);
// animation????
angle = angle + (10 * (Math.PI/180));
}
問題は、それがevenly spaces lines、ビデオ内に作成されていないパターンを作成することです。
あなたが模倣しようとしているビデオのスクリーンショットを含めるための方法はありますか?多くの人々はfacebookを訪問したくない。 –