您好,登錄后才能下訂單哦!
本文實例為大家分享了p5.js臨摹動態(tài)圖片的具體代碼,供大家參考,具體內(nèi)容如下
1、臨摹圖片
2、圖像運動規(guī)律
原圖中一共有36個等大的四分之三圓形,按照一定的規(guī)律轉(zhuǎn)動,可以等效為圓形不動,每個圓上有以其半徑為邊長的矩形在繞圓形的原點轉(zhuǎn)動,每四個為一組,其他部分都是在重復(fù)這四個的轉(zhuǎn)動規(guī)律
3、完整代碼
function setup() { createCanvas(402,402); } function draw() { background(0); var dx=0; dx+=PI/180; var t=(millis()/5)*sin(dx);//返回自程序開始的毫秒數(shù) if(dx==PI) { dx=0; } for(var i=0;i<6;i++)//每行每列六個圓形 { for(var j=0;j<6;j++) { fill(255); ellipse(i*66+36, j*66+36, 60, 60);//繪制半徑30的圓形,間隔6 fill(0); translate(i*66+36, j*66+36);//矩形的移動,共四種運動狀態(tài) if(i%2==0&&j%2==0) { rotate(-t); //逆時針旋轉(zhuǎn) rect(0,0,30,30);//旋轉(zhuǎn)的邊長30黑色矩形 } else if(i%2==1&&j%2==0) { rotate(t);//順時針旋轉(zhuǎn) rect(-30,0,30,30); } else if(i%2==1&&j%2==1) { rotate(-t); rect(-30,-30,30,30); } else if(i%2==0&&j%2==1) { rotate(t); rect(0,-30,30,30); } resetMatrix(); } } }
4、臨摹結(jié)果
5、拓展圖像
運動規(guī)律:
一段螺旋型的運動弧線,中心顏色較深,越向外顏色越淺,形成一種線在向中心運動的趨勢。繪制時是由無數(shù)個沒有邊框的圓形一起按照規(guī)律運動,形成線。
完整代碼:
function setup() { createCanvas(500, 500); noStroke(); } function draw() { background(0); for (var i =1;i <3000; i++) { drawcircle(255-0.1*i,255-0.1*i,255-0.1*i, i); i++; } } function drawcircle( r, g, b, interval){ fill(r, g, b); var x = 250; var y = 250; var t = millis() /3+ interval *0.5; var xi; var yi;i var radius = interval *15; xi = 0.01*radius * Math.cos(t * Math.PI/180); yi = 0.01*radius * Math.sin(t * Math.PI/180); x += xi; y += yi; ellipse(x, y, 20,20); }
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。