2011年11月21日 星期一

上機考




img=loadImage("Winter.jpg");

img2=loadImage("123.jpg");
for(int i=1;i<=250;i+=50)
for(int j=1;j<=500;j+=50)
image(img,0+2*i,0+2*j,50,50);
image(img2,600,200,50,50);
這段程式碼是我在上機考時想破腦筋為了分數才使出的大絕招,沒想到還有第二階段,我想這時就是我發揮同學間討論的時候了。
在同學的細心的一段一段程式碼跟我講解過之後,我依然發現,我缺的東西可真是多,在這學期的新環境processing中,
百思不解的我終於提起勇氣去面對它。
if(mousePressed == true)
{
for(int i=0;i<=49;i++)
if(mouseX<=x[i]+50 && mouseX>=x[i]-50 && mouseY<=y[i]+50 && mouseY>=y[i]-50)
{
x[i]=3000;
y[i]=3000;
sum++;
}
這段是問過同學後加上去的,當初我只是想讓蚊子出現50隻就好了,現在的我不知道要怎麼讓蚊子消失,所以我利用滑鼠點擊蚊子後,離開視窗外,所以我運用設x和y大於長寬之外,使得蚊子離開版面。
win(z);
z=0;
if(sum==50)
{
background(155);
fill(0);
text("PERFECT",350,350);
}
}
void win(int z)
{

if(z==1)
{
x=new int[50];
y=new int[50];
for(int i=0;i<=49;i++)
{
x[i]=(int)random(0,750);
y[i]=(int)random(0,750);
}
}
for(int i=0;i<=49;i++)
image(img,x[i],y[i],50,50);

}
這段程式是我的蚊子不斷重複random,所以我為了不讓他一直重複跑,所以我在程式先前就先把變數設成1,當我run到蚊子random執行過一次後,跳出迴圈時,再把變數設為0,這樣會使程式run第2遍或第3遍時,此迴圈不會再跑,促使我的蚊子固定住。
前半段是設立蚊子在x和y軸中的空間大小及位子。
而在中間那段,則是當我蚊子全部清除後,出現perfect的畫面。
後半段則是印出蚊子的迴圈

此次期中上機讓我受益良多,讓我突破對processing的逃避,之後我一定要更加倍努力去學習此課程

沒有留言:

張貼留言