Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- class Particle {
- float x;
- float y;
- float size;
- float speedX;
- float speedY;
- color col;
- int age;
- }
- ArrayList<Particle> dot;
- void setup() {
- size(640,640);
- dot = new ArrayList<Particle>();
- for (int i=0; i<100; i++) {
- /*Particle myDot = new Particle();
- myDot.x = random(640);
- myDot.y = random(640);
- myDot.size = random(20);
- myDot.speed = random(5);
- myDot.col = random(255);
- dot.add(myDot);*/
- }
- }
- void draw() {
- println(dot.size());
- background(0);
- for (int i=0; i < dot.size(); i++) {
- Particle myDot = dot.get(i);
- noStroke();
- fill(myDot.col);
- ellipse(myDot.x, myDot.y, myDot.size, myDot.size);
- myDot.speedY = myDot.speedY + 0.08;
- myDot.x = myDot.x + myDot.speedX;
- myDot.y = myDot.y + myDot.speedY;
- myDot.age = myDot.age + 1;
- }
- for (int i=0; i < dot.size(); i++) {
- Particle myDot = dot.get(i);
- if (myDot.y > 640 || myDot.x > 640 || myDot.y < 0 || myDot.x < 0 || myDot.age > 120) {
- dot.remove(myDot);
- }
- }
- }
- void mousePressed() {
- for (int i=0; i<1000; i++) {
- Particle myDot = new Particle();
- myDot.age = 0;
- myDot.x = mouseX;
- myDot.y = mouseY;
- myDot.size = random(20);
- float ang = random(360);
- float spd = random(5);
- myDot.speedX = sin(radians(ang)) * spd;
- myDot.speedY = cos(radians(ang)) * spd;
- colorMode(HSB);
- myDot.col = color(random(30),255,255);
- dot.add(myDot);
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement