//package com.mycompany.app.mygroovymodule import processing.core.*; /* import java.applet.*; import java.awt.*; import java.awt.image.*; import java.awt.event.*; import java.io.*; import java.net.*; import java.text.*; import java.util.*; import java.util.zip.*; */ //--------------------------------------------------------- //--------------------------------------------------------- /** A group of dots appear and then shrink in size. This sketch uses the Groovy List and uses an external second class SpriteEllipse. */ class sketch_071119c_groovy extends PApplet { // global variables Integer nCount = -1 List listSprite = [] //--------------------------------------------------------- /* This is called once at start of application */ void setup() { size(400, 400) frameRate(10) smooth() } //--------------------------------------------------------- /* This is called every time slice. */ void draw() { background(120) nCount++ nCount %= 90 if (nCount == 0) { for (i in 0..20) { def x = random(0, width) def y = random(0, height) def r = random((Integer) (height*0.05), (Integer) (height*0.225)) // 20, 90 Integer color = random(0, 255) SpriteEllipse sprite = new SpriteEllipse(x, y, r, color, this) listSprite << sprite } } for (e in listSprite) { e.update() } // remove dead sprites List listSprite2 = listSprite.findAll { it.isDead() } //println "listSprite2: ${listSprite2}" //println "listSprite: ${listSprite}" listSprite = listSprite.minus(listSprite2) for (e in listSprite) { e.render() } } //--------------------------------------------------------- /* */ static void main(args) { println "in main" PApplet.main([ "sketch_071119c_groovy" ] as String[]); println "DONE" } }