วันจันทร์ที่ 15 กันยายน พ.ศ. 2557
Lab 3 : Task#2 - Graph (with Min & Max & Avg)
Warning >>> A little text position bug on Processing
int n=8;
float w_box;
float[] y=new float[n];
void setup()
{
size(480,300);
background(0);
w_box=width/n;
for(int i=0;i<n;i++)
{y[i]=0;}
}
void draw()
{
background(0);
draw_graph();
draw_max();
draw_min();
draw_avg();
draw_grid();
}
void mousePressed()
{
for(int i=0;i<n;i++)
{
if(mouseX>i*w_box&&mouseX<(i+1)*w_box)
{
y[i]=height-mouseY;
}
}
}
void mouseDragged()
{
for(int i=0;i<n;i++)
{
if(mouseX>i*w_box&&mouseX<(i+1)*w_box)
{
y[i]=height-mouseY;
}
}
}
void draw_graph()
{
stroke(0,255,0);
textAlign(CENTER);
for(int i=0;i<n;i++)
{
fill(0,255,0,50);
rect(i*w_box,height,w_box,-y[i]);
fill(0,255,0,255);
text(round(y[i]/3),(i*w_box)+(w_box/2),height-5);
}
}
void draw_max()
{
float $max;
$max=max(y);
line(0,height-$max,width,height-$max);
textAlign(RIGHT);
text("max = "+round($max/3),width-2,height-$max+13);
}
void draw_min()
{
float $min;
$min=min(y);
line(0,height-$min,width,height-$min);
textAlign(RIGHT);
text("min = "+round($min/3),width-2,height-$min+13);
}
void draw_avg()
{
float sum=0,avg;
for(int i=0;i<n;i++)
{
sum=sum+y[i];
}
avg=(sum/n);
line(0,height-avg,width,height-avg);
textAlign(RIGHT);
text("avg = "+round(avg/3),width-2,height-avg+13);
}
void draw_grid()
{
stroke(0,255,0,80);
for(int i=height;i>=0;i=i-10)
{
line(0,i,width,i);
}
for(float i=width;i>=0;i=i-w_box)
{
line(i,0,i,height);
}
}
Lab 3 : Task#1 - Balloon
Warning >>> Bug on firefox
int num=100,stop_r_p=0,count=0,click_fix=0;
float[] px=new float[num],py=new float[num];
float a;
void setup()
{
size(500,500);
strokeWeight(3);
for(int i=0;i<num;i++)
{py[i]=height+100;}
}
void draw()
{
background(150);
if(stop_r_p<=num)
{
for(int i=0;i<num;i++)
{px[i]=random(0,width);stop_r_p++;}
}
if(mousePressed&&click_fix==0)
{
click_fix=1;
count=count+1;
if(count==num)
{count=0;}
py[count]=height+100;;
}
for(int i=0;i<count;i++)
{
draw_balloon(px[i],py[i]);
a=0.005*(py[i]+height);
py[i]=py[i]-a;
}
}
void draw_balloon(float px,float py)
{
fill(255,190,210,200);
ellipse(px,py,100,120);
line(px,py+60,px,py+180);
fill(255,190,210);
triangle(px,py+63,px+7,py+75,px-7,py+75);
}
void mouseReleased()
{
click_fix=0;
}
สมัครสมาชิก:
บทความ (Atom)