代码
float r=30; //半径
Qiu[] qiu1=new Qiu[100];
void setup()
{
size(800,800); //画布大小
for(int i=0;i<qiu1.length;i++)
{
qiu1[i]=new Qiu(random(0+r/2,width-r/2),random(0+r/2,height-r/2));
}
}
void draw()
{
background(198); //背景色
for(int i=0; i<qiu1.length;i++)
{
for(int j=0;j<qiu1.length;j++)
{
if(dist(qiu1[i].x,qiu1[i].y,qiu1[j].x,qiu1[j].y)<=100)
{
stroke(-12303300); //边框色
strokeWeight(2); //边框宽度
line(qiu1[i].x,qiu1[i].y,qiu1[j].x,qiu1[j].y); //画条线
}
}
}
for(int i=0;i<qiu1.length;i++)
{
qiu1[i].update();
qiu1[i].display();
}
}
class Qiu
{
float x,y;
float xs,ys;
Qiu(float _x,float _y)
{
x=_x;
y=_y;
xs=ran();
ys=ran();
}
void update()
{
x+=xs*2;
y+=ys*2;
if(x<=0+r/2)
{
xs*=-1;
}
if(x>=width-r/2)
{
xs*=-1;
}
if(y<=0+r/2)
{
ys*=-1;
}
if(y>=height-r/2)
{
ys*=-1;
}
}
void display()
{
stroke(0);
strokeWeight(2);
fill(-3618616); //背景色
ellipse(x,y,r,r); //画个圆
}
float ran()
{
return random(-1,1);
}
}
效果图
总结
第一次练手作品