製作 lyto different color
__________________________________先畫出4個圓____________________________________
size(300,500);
ellipse(75,200+75,150,150);//(x座標,y座標,直徑)
ellipse(75+150,200+75,150,150);
ellipse(75,200+75+150,150,150);
ellipse(75+150,200+75+150,150,150);
__________________________________畫出3*3個圓____________________________________
size(300,500);
ellipse(50,200+50,100,100);
ellipse(50+100,200+50,100,100);
ellipse(50+100+100,200+50,100,100);
ellipse(50,200+50+100,100,100);
ellipse(50+100,200+50+100,100,100);
ellipse(50+100+100,200+50+100,100,100);
ellipse(50,200+50+100+100,100,100);
ellipse(50+100,200+50+100+100,100,100);
ellipse(50+100+100,200+50+100+100,100,100);
________________________利用迴圈簡化程式_____________________________________
size(300,500);
for(int y=0;y<3;y++)//直排
{
for(int x=0;x<3;x++)//橫排
{
ellipse(50+x*100,200+50+y*100,100,100);
}
}
_______________________________若要n個球____________________________________
size(300,500);
//300是畫面寬度
int n=5;
int R=300/n, r=R/2;//R為直徑,r為半徑
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
ellipse(r+x*R,200+r+y*R,R,R);
}
}
_____________________________讓球放大________________________________________
void setup()
{
size(300,500);
}
int n=5;
int R=300/n, r=R/2,RR=0;
void draw()
{
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
ellipse(r+x*R,200+r+y*R,RR,RR);
}
}
if(RR<R)RR++;//給個條件.讓圓形放大時不會重疊
}
void setup()
{
size(300,500);
}
int n=5,RR=0;
void draw()
{
background(0);
int R=300/n, r=R/2;//放在迴圈,讓球的直徑會更新
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
ellipse(r+x*R,200+r+y*R,RR,RR);
}
}
if(RR<R)RR++;
else
{
n++;//讓球的數量不斷增加
RR=0;//球的大小歸0
}
}
void setup()
{
size(300,500);
}
int ansX=1, ansY=2;
int n=3,RR=0;
void draw()
{
background(0);
int R=300/n, r=R/2;
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
if(x==ansX && y==ansY) fill(128);//符合條件改變顏色
else fill(255);
if(dist( mouseX,mouseY,r+x*R,200+r+y*R)<r)fill(255,0,0);//滑鼠碰到的圓 變紅色
ellipse(r+x*R,200+r+y*R,RR,RR);
}
}
if(RR<R)RR+=R/30;
else
{
n++;
RR=0;
}
}
________________________________________________________________________
background(0);
int R=300/n, r=R/2;
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
if(x==ansX && y==ansY) fill(128);
else fill(255);
if(dist( mouseX,mouseY,r+x*R,200+r+y*R)<r)
{
if(mousePressed && x==ansX && y==ansY)//當按下灰色球時 換灰色球的位置
{
ansX=int (random(n));
ansY=int (random(n));
}
}
ellipse(r+x*R,200+r+y*R,RR,RR);
}
_____________________________改變色彩______________________________________
void setup()
{
size(300,500);
colorMode(HSB,256);//色彩系統
}
int ansX=1, ansY=2;
int n=3,RR=0;
int H=0;//Hue色調
void draw()
{
background(0);
int R=300/n, r=R/2;
for(int y=0;y<n;y++)
{
for(int x=0;x<n;x++)
{
if(x==ansX && y==ansY) fill(H-10,243,234);//答案些微調色
else fill(H,255,255);
if(dist( mouseX,mouseY,r+x*R,200+r+y*R)<r)
{
if(mousePressed && x==ansX && y==ansY)
{
ansX=int (random(n));
ansY=int (random(n));
H+=20;//改變顏色
if(H>256)H=0;//超過色彩值變回紅色
}
}
ellipse(r+x*R,200+r+y*R,RR,RR);
}
}
if(RR<R)RR+=R/30;
}










沒有留言:
張貼留言